我有一个看起来像这样的数组:
array(
'name1' => array('city1', 'city2', 'city3'),
'name2' => array('city1', 'city4'),
'namen' => array('city1', 'city7', 'cityn')
);
Run Code Online (Sandbox Code Playgroud)
传递给smarty的是:$my_names
我的Smarty模板中有一个循环,如下所示:
{{foreach from=$names item=name}}
{{foreach from=$cities item=city}}
//Check if name1 exist and after check if the city is in the array for that name
{{/foreach}}
{{/foreach}}
Run Code Online (Sandbox Code Playgroud)
我没有看到如何使用$name和$city访问数组$my_names
我试过了if($my_names.$name.$city),但它不起作用.
Bri*_*vre 15
这种表示法也适用:
{if 'needle'|array_key_exists:$haystack}
....
{/if}
Run Code Online (Sandbox Code Playgroud)
您可以使用array_key_exists()函数来检查密钥是否在数组中.
{if array_key_exists('needle', $haystack)}
DoSomethingAboutIt
{/if}
Run Code Online (Sandbox Code Playgroud)