使用PHP中的另一个元素访问关联数组元素

时间:2017-08-05 18:32:43

标签: php

我对PHP很陌生,我不确定如何提出这个问题。我的数据是这样的(显示在JSON中以便于查看,但我实际上使用数组)

[{"_id":"1","title":"Month & Year","description":"To be used in Jurisprudence"},
 {"_id":"3","title":"Bible Version I","description":"Testament - Book - Chapter"}]

我在PHP中知道我可以通过使用foreach以及使用标准for循环来访问关联数组的元素。

例如:

for($n=0;$n<sizeof($array_data);$n++){
     echo $array_data[$n]['title'];
}

不使用索引,如果可能,我想要做的是使用_id访问标题。有点像,如果有3作为_id,它应该在该数组中显示相应的标题,即圣经版本I.

2 个答案:

答案 0 :(得分:2)

使用if声明。

foreach ($array_data as $item) {
    if ($item['_id'] == 3) {
        echo $item['title'];
        break;
    }
}

如果您要做很​​多事情,您应该将数组更改为关联数组,这样您就可以使用$array_data[3]。例如。它应该是:

{
    "1": {"_id":"1","title":"Month & Year","description":"To be used in Jurisprudence"},
    "3": {"_id":"3","title":"Bible Version I","description":"Testament - Book - Chapter"}
}

答案 1 :(得分:1)

没有循环的更有效的解决方案是将array_search与array_column一起使用:

<b>

使用php 5.5.0或更高版本。请参阅here