0

我有一组用于创建菜单的对象,每个对象都有属性 id、video_id 和 chapter_id。

我想为每个循环制作一个,例如

foreach($menu_objects as $object WHERE $object->chapter == $variable)

有没有办法做到这一点?

4

4 回答 4

4

PHP 不提供这样的语法,但是,您始终可以将其作为if- 语句作为循环中的第一行:

foreach ($menu_objects as $object) {
    if ($object->chapter != $variable) continue;
    ... process as normal ...
于 2012-11-13T13:44:06.317 回答
1

只需在循环中嵌套一个 if :

foreach($menu_objects as $object){
  if($object->chapter == $variable){
    // do something here
  }
}
于 2012-11-13T13:44:12.960 回答
0

几种方法

foreach(array_filter($menu_objects, function($o) { return $o->chapter == $variable}) as $object)

或者

foreach($menu_objects as $o)
{
    if ($o->chapter == $variable)
    {
        //Code here
    }
}
于 2012-11-13T13:44:04.587 回答
0

只需添加一个如果?

foreach($menu_objects as $object) {
   if ($object->chapter == $variable) {
      // Do Something?
   }
}
于 2012-11-13T13:44:21.917 回答