PHP анонимная функция в массивах, каков синтаксис?

Могу ли я определить анонимные функции в качестве значения массива? Это не работает:

   $m = array(
        0 => array('condition' => function($v) { return intval($v)}),
        3 => array('condition' => function($v) { return trim($v) > 0})
    );

2 ответа

Решение

Попробуй это:

$m = array(
    0 => array('condition' => function($v) { return intval($v); }),
    3 => array('condition' => function($v) { return trim($v) > 0; }),
);

Вы забыли ;,

В PHP каждое выражение должно заканчиваться точкой с запятой. Попробуй это:

$m = array(
           0 => array('condition' => function($v) { return intval($v);   } ),
           3 => array('condition' => function($v) { return trim($v) > 0; } )
           );

Смотрите документацию для деталей.

Другие вопросы по тегам