视图解析器的文档处理条件,但它们的示例只处理与循环项没有关系的显式定义的变量。适用于以下情况:
{ if $var === 'foo' }
<p>This is foo</p>
{ endif }
所以,如果我想检查循环项上属性的值,我该怎么做呢?理想情况下,我期望这样的东西(在本例中,users
是一个数组(:
<ul>
{ users }
<li>{ name }
{ if id == 1 }
This is the first user
{ endif }
</li>
{ /users }
</ul>
但是,在这种情况下,无论id
前面是否有美元符号,它都会抱怨没有定义该值。也许像$user['id']
这样的东西会起作用,但我怎么能知道CodeIgniter在其内部迭代中使用的变量的名称呢?
编辑1:数据阵列
$data = [
'users' => [
[
'id' => 1,
'name' => 'John'
], [
'id' => 2,
'name' => 'Ben'
]
]
];
循环在"查看片段的文档"中进行了解释。
您需要将其与条件逻辑组合如下:
<ul>
{ users }
<li>{ name }
{ if $id == 1 }
This is the first user
{ endif }
</li>
{ /users }
</ul>