根据此数组中的值过滤foreach数组

时间:2017-06-05 20:11:28

标签: php arrays

您好我有以下数组:

$tourcontent

enter image description here

以及以下foreach:

foreach($tourcontent as $set)

如何限制此foreach输出的结果仅限于子数组categories[]中包含值为5的位置$tourcontent[]['info']['categories'][] = 5 ?

2 个答案:

答案 0 :(得分:2)

您可以使用in_array

foreach($tourcontent as $set) {
    if (in_array(5, $set['info']['categories'])) {
        // do stuff
    }
}

这只会"做东西"到$set数组中包含5的{​​{1}}。

答案 1 :(得分:1)

或者,如果您不需要预知所有阵列,您可以尝试以下方式:

foreach($tourcontent['info']['categories'] as $category)
{
  if($category == 5)
  {
    echo "found!"
  }  
}