什么是" defun"在Smarty

时间:2015-02-19 08:19:32

标签: smarty

我有时会在Smarty中看到 defun 功能。不幸的是,文件compiler.defun.php没有记录,也不能谷歌任何有用的东西。那么defun意味着什么,它到底应该做什么?

阅读代码我认为它是某种功能创建,但我不能想到为什么有人会用聪明的模板来定义函数。谷歌的结果经常提到迭代递归,但没有给出一个关于defun如何与之相关的例子。

由于

1 个答案:

答案 0 :(得分:2)

似乎defunfunction相似(或相同)。我的猜测是defun是一个yoda-代表“函数定义”。

我用它来生成一个导航容器,本质上是非对称的和动态的,需要将一些带有简单mod的样板html列表复制到它们的类属性中。其实我发现了类似example of generating a nested menu的东西。我也用它来为ZF2表单创建一些特殊的简单视图助手。

有人可能会争论是否在模板中声明函数会产生可读和/或可维护的代码,但这是一种选择。