如何在不使用循环的情况下获取关联数组的特定字段?

时间:2013-11-17 07:38:26

标签: php arrays codeigniter

我想得到一个数组的特定字段,但它一直向我发送错误,如Undefined index: inCannot use object of type stdClass as array in。我正在使用codeigniter,这个数组来自我的模型,它返回我的控制器。这是我的控制器。

  $data['inpatient'] = $this->billing_model->retrieveinpatient();
  echo $data['inpatient']['in'];

这是我的数组的结构:

 Array
 (
  [inpatient] => Array
    (
        [0] => stdClass Object
            (
                [iid] => 1
                [in] => IN
            )
    )

)

任何帮助?

2 个答案:

答案 0 :(得分:2)

看看你的结构。数组输出是key =>值。您的第一个数组具有键inpatientinpatient值是一个包含一个键的数组 - 0,保存stdClass。

所以一定是

echo $data['inpatient'][0]->in;

答案 1 :(得分:1)

问题是您正在尝试使用数组点表示法访问对象。

试试这个:

echo $data['inpatient'][0]->in;

$data['inpatient']确实是一个数组,因此您可以使用索引表示法。在我的示例中,索引为0。一旦您指向正确的索引,您就可以使用stdClass Object。要提取stdClass Object的属性,您可以使用对象属性表示法->来获取in属性。