2015-12-09 3 views
2

Как проверить, предоставлены ли какие-либо значения массиву. В PHP я добавляю в массив так:Twig проверить, есть ли какие-либо значения в массиве

$myArray['index1'] = $someVal1; 
$myArray['index2'] = $someVal2; 

Проблема заключается в том, что, когда в Twig я использую | длины фильтр дает результаты при $ someVal1 или $ someVal2 не имеет значения (это значение, взятое из чтобы они не были заполнены). Поэтому я хочу, чтобы проверить, если значения не предусмотрены во всем массиве, так:

{% if myArray|what_filter_here? == 0|empty|whatever %} This text should not appear {% endif %} 

Можно ли это сделать в одном состоянии?

ответ

4

Try с empty -

{% if myArray is empty %} ... {% endif %} 
2

Что-то вроде:

{% if myArray|length > 0 %} 
    This text should not appear 
{% endif %} 
+0

Это должно быть правильным ответом. Это то, что производители Symfony также используют в своем коде для платформы. – cezar

+0

@cezar, почему вы считаете «пустым» неправильный ответ? – simPod

+0

@simPod Я явно не сказал, что «пусто» - неправильный ответ. Для этого ответа я дал уже объяснение, и я думаю, что лучше следовать соглашениям, используемым создателями фреймворка. Хотя я согласен, что «пусто» является читабельным человеком и более подробным. – cezar

Смежные вопросы