如何确定我的变量是对象还是带树枝的数组?
How can I find out if my variable is an object or an array with twig?
我试图找出我的变量是对象还是数组:
{% if variable is iterable %}It is an array{% else %}it is an object{% endif %}
但在某些情况下我得到的结果是:
It is an array
你是对的,twig iterable
测试有缺点,因为对象也可以迭代。 PHP 具有像 is_array
和 is_object
这样方便的函数,但是,无法直接访问 Twig 中的常规 PHP 函数。所以,我们需要写一个 Twig extension/Test,即添加一个新的 Twig_SimpleTest
来检查一个项目是否 is_array
。您可以在一般树枝 bootstrap.
之后将此测试添加到您的应用程序配置中
$isArray= new Twig_SimpleTest('array', function ($value) {
return is_array($value);
});
$twig->addTest($isArray);
简单地我们这样:
{% if var is array%} It is an array
{% else %} It is an object{% endif %}
我试图找出我的变量是对象还是数组:
{% if variable is iterable %}It is an array{% else %}it is an object{% endif %}
但在某些情况下我得到的结果是:
It is an array
你是对的,twig iterable
测试有缺点,因为对象也可以迭代。 PHP 具有像 is_array
和 is_object
这样方便的函数,但是,无法直接访问 Twig 中的常规 PHP 函数。所以,我们需要写一个 Twig extension/Test,即添加一个新的 Twig_SimpleTest
来检查一个项目是否 is_array
。您可以在一般树枝 bootstrap.
$isArray= new Twig_SimpleTest('array', function ($value) {
return is_array($value);
});
$twig->addTest($isArray);
简单地我们这样:
{% if var is array%} It is an array
{% else %} It is an object{% endif %}