在CodeIgniter中访问数组变量

时间:2014-07-03 16:16:03

标签: php codeigniter

这是我的模块

function order_alert($email){

        $this->db->select("tbl_customer_registration.cus_mobile");
        $this->db->from('tbl_customer_registration');
        $this->db->where('tbl_customer_registration.cus_email', $email);
        $query = $this->db->get();
        echo '<pre>';
        print_r($query->result()) ;

}

它返回以上代码的以下结果

Array
(
    [0] => stdClass Object
        (
            [cus_mobile] => 0716352642
        )

)

在控制器中我使用foreach

foreach($result as $row) :
echo $row['cus_mobile'];

从上面的数组中获取[cus_mobile],但它会在[cus_mobile]中为我提供所有tbl_customer_registration行。

如何从中获取唯一的[cus_mobile] => 0716352642

3 个答案:

答案 0 :(得分:1)

$row->cus_mobile

因为你有一个对象数组..不确定我是否有你的问题

<强>(修订版) 试试这个..

foreach($query->result() as $row) {
   echo $row->cus_mobile;
}

答案 1 :(得分:0)

如果我的问题得到了解决,那么你所做的就是将数据作为对象数组检索并尝试以纯数组的形式访问其数据。要这样做,您可以将数据结果作为数组检索,可以使用result_array()方法代替$query->result()

echo '<pre>';
print_r($query->result_array()) ;

foreach($result as $key => $row) :
echo $row['cus_mobile'];

答案 2 :(得分:0)

    function order_alert($email){

    $this->db->select("tbl_customer_registration.cus_mobile");
    $this->db->from('tbl_customer_registration');
    $this->db->where('tbl_customer_registration.cus_email', $email);
    $query = $this->db->get();
   if($query->num_rows()==1)
    $result_row = $query->row();
    return $result_row;
    else 
    return false;

}

    foreach($result_row as $row) {
    echo $row->cus_mobile;
    }

这将适用于如果结果有一行......现在需要处理大于一行的情况。谢谢