我想得到一个数组的特定字段,但它一直向我发送错误,如Undefined index: in
或Cannot 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
)
)
)
任何帮助?
答案 0 :(得分:2)
看看你的结构。数组输出是key =>值。您的第一个数组具有键inpatient
。 inpatient
值是一个包含一个键的数组 - 0,保存stdClass。
所以一定是
echo $data['inpatient'][0]->in;
答案 1 :(得分:1)
问题是您正在尝试使用数组点表示法访问对象。
试试这个:
echo $data['inpatient'][0]->in;
$data['inpatient']
确实是一个数组,因此您可以使用索引表示法。在我的示例中,索引为0
。一旦您指向正确的索引,您就可以使用stdClass Object
。要提取stdClass Object
的属性,您可以使用对象属性表示法->
来获取in
属性。