回答:
正確に何が必要かに応じて:
is null値がであるかどうかを確認しますnull。
{% if var is null %}
{# do something #}
{% endif %}is defined 変数が定義されているかどうかを確認します。
{% if var is not defined %}
{# do something #}
{% endif %}さらに、is sameas2つの値のタイプを厳密に比較するテストは、null(false)以外の値をチェックする場合に役立ちます。
{% if var is sameas(false) %}
{# do something %}
{% endif %}
isset()機能、is defined戻りますtrue変数が定義されている場合、それの値はnullです。
is_ sameasしなければなら{% if var is same as(false) %}ない{% if var is sameas(false) %}参照ドキュメントのURL => twig.symfony.com/doc/2.x/tests/sameas.html
twigでデフォルト値を設定する方法:http : //twig.sensiolabs.org/doc/filters/default.html
{{ my_var | default("my_var doesn't exist") }}
または、nullのときに表示したくない場合:
{{ my_var | default("") }}
undefined or emptyやnull?
前提がなければ、答えは次のとおりです。
{% if var is null %}
しかし、これはtrueがtrueの場合にのみ当てはまり、評価される他の値(ゼロ、空の文字列、空の配列など)にvarは当てはまりNULLませんfalse。また、var定義されていない場合はエラーとなります。より安全な方法は次のとおりです。
{% if var is not defined or var is null %}
これは次のように短縮できます。
{% if var|default is null %}
defaultフィルターに引数を指定しない場合は、NULL(デフォルトの一種)と見なされます。したがって、変数が空であるかどうか(null、false、空の文字列/配列など)を確認するための最短かつ最も安全な方法(私は知っています):
{% if var|default is empty %}
できないと思います。これは、変数がtwigテンプレートで定義されていない(設定されていない)場合、その変数は(小枝の用語では)NULLまたはのように見えるためnoneです。これは、テンプレートで発生する不良アクセスエラーを抑制するためのものです。
Twig(===)には「アイデンティティー」がないため、これはあなたができる最高の方法です
{% if var == null %}
stuff in here
{% endif %}
これは次のように変換されます:
if ((isset($context['somethingnull']) ? $context['somethingnull'] : null) == null)
{
echo "stuff in here";
}
あなたのあなたの良い場合には、どのタイプのジャグリングは、手段のようなものがあること0、''、FALSE、NULL、および未定義のvarはまた、その文が真のようになります。
IDをTwigに実装するように依頼することをお勧めします。
{if var is none}で、PHPの同等機能は何ですか?
{% if abcxyz is none %}なりif (isset($context["abcxyz"])) { $_abcxyz_ = $context["abcxyz"]; } else { $_abcxyz_ = null; } if ((null === $_abcxyz_)) { echo "hi"; }ます。したがって、基本的に値が未定義またはnullの場合、それはtrueになります。
{% if var is empty %} twig.sensiolabs.org/doc/tests/empty.html PHPに変換if (empty($var))falsey値に対して評価する(こと!isset, null, 0, array(), "", false, "0", 0.0)php.net/manual/en/function.empty.phpすることができます{% if var is same as(var) %}ID(===)にも使用します。twig.sensiolabs.org/doc/tests/sameas.html
//test if varibale exist
{% if var is defined %}
//todo
{% endif %}
//test if variable is not null
{% if var is not null %}
//todo
{% endif %}
if var is not nullます。
{% if var is not null %}