我正在尝试将数据从Wordpress数据库传输到Codeigniter项目。我有一个返回单个值的模型方法,但我继续得到以下内容:
消息:未定义的索引:meta_value
文件名:models / transfer_model.php
以下是模型:
public function get_meta($post_id, $key)
{
$this->db->select('meta_value');
$this->db->from('wp_postmeta');
$this->db->where('post_id', $post_id);
$this->db->where('meta_key', $key);
$this->db->limit(1);
$query = $this->db->get();
$row = $query->row_array();
return $row['meta_value'];
}
如果我print_r($row);
,我会收到以下信息:
Array
(
[meta_value] => The Data
)
如何阻止它返回此错误?
答案 0 :(得分:0)
哪里有记录提取你在没有用查询提取的记录时返回,那么没有任何意味着你的行是空的以避免这种使用key_exists或array_key_exists看看php doc
public function get_meta($post_id, $key)
{
$this->db->select('meta_value');
$this->db->from('wp_postmeta');
$this->db->where('post_id', $post_id);
$this->db->where('meta_key', $key);
$this->db->limit(1);
$query = $this->db->get();
$row = $query->row_array();
$return = '';
if(key_exists('meta_value',$row))
$return = $row['meta_value'];
return $return;
}
答案 1 :(得分:0)
如果使用整数索引怎么办?
$row = $query->row_array();
return $row[0];