无法理解Smarty foreach循环内部的语法

时间:2012-10-26 21:42:13

标签: php smarty

在现有的代码库中,我找到了一行

   {foreach from=$app_list item=app name=apps}
       {item table=application sid=$app.APPLICATION_SID}
   {/foreach}

我无法在文档中找到对{item ...}行的解释,也找不到定义applicationsid的位置。

任何人都可以解释这条线路在做什么吗?如果没有此行,则无法显示应用名称列表。

2 个答案:

答案 0 :(得分:0)

检查调用此函数的代码。最有可能application$app被设置在那里。

答案 1 :(得分:0)

它绝对看起来像一个自定义功能。有两种可能性:

  1. 包含一个定义自定义函数的模板。查找字符串{function item{function name=item

  2. 它也可以是用PHP编写的智能扩展。查找名为function.item.php的文件。它可能位于Smarty的plugins目录中,也可能位于源树中的某个位置。您可以尝试查看项目用于Smarty的设置代码,并查看是否调用Smarty方法setPluginsDir()addPluginsDir()方法。如果您使用的是旧版本的Smarty,请查找对->plugins_dir的引用。