0

我有这个聪明的模板,我需要从我的文件中调用一个函数。

一切正常,php 识别参数,但不是 smarty 变量的值。代码:

{insert name=file_details value=a assign=fd fid=$m[i].FID}
<ul class='list'>
    {section name=x loop=$fd}
        {insert name=gfs assign=afs a=$fd[x]}
        <li><a href="{$baseurl}/files/{$fd[x].FID|md5}{$fd[x].s}/{$fd[x].fname}" target="_blank">
        {$fd[x].fname} <b>[{$afs}]</b>
        </a></li>
    {/section}
</ul>

意义。第一个插入从我的数据库中检索一些文件信息,使用作为参数 $m[i].FID 一切正常,当我告诉他例如 {$fd[x].fname} 它显示文件的名称,但是当我告诉他 {insert name=gfs assign=afs a=$fd[x]} 并在函数 insert_gfs 中创建一个 var_dump(a) 所有值都显示为空。

任何帮助都会很棒,我不知道我错过了什么

4

1 回答 1

0

数组的编写方式$m.i与 Smarty 相同。不是$m[i]

如果您像这样替换所有数组符号,它应该可以工作。

{insert name=file_details value=a assign=fd fid=$m.i.FID}
<ul class='list'>
    {section name=x loop=$fd}
        {insert name=gfs assign=afs a=$fd.x}
        <li><a href="{$baseurl}/files/{$fd.x.FID|md5}{$fd.x.s}/{$fd.x.fname}" target="_blank">
        {$fd.x.fname} <b>[{$afs}]</b>
        </a></li>
    {/section}
</ul>
于 2012-12-20T12:28:12.237 回答