如何在symfony 1.4中创建/使用自定义类和帮助器?

时间:2011-03-06 18:54:49

标签: symfony1 symfony-1.4

在symfony中放置自定义库或帮助器方法的最佳方法是什么? 我正在使用我的项目的学说。我考虑放在的一个地方是

project_root/lib/vendor/MyClasses/
但是,如果我想创建一个类或辅助函数,它将使用一些核心symfony / doctrine方法并返回结果然后如何做到这一点,我应该把它放在哪里? 我希望它从不同的模块调用,以避免代码重复。

2 个答案:

答案 0 :(得分:7)

至于问题的自定义库部分,您可能希望将外部库放入 lib / vendor 文件夹中。由于symfony不会自动加载其中的所有内容,因此您必须告诉其自动加载器这样做。

您可以扩展 config / ProjectConfiguration.class.php (如所述here)或(这是更简单,更简洁的方式)将它们添加到 config / autoload.yml (你可能需要创建这个)。 对于后一种选择,this是开始查看的好地方。

答案 1 :(得分:2)

似乎是duplicate question

正如symfony's 1.2“权威指南”文档中所述:

  

Helper函数(返回HTML代码的常规PHP函数)应保存在名为FooBarHelper.php的文件中,其中FooBar是帮助程序组的名称。将文件存储在apps / myapp / lib / helper /目录中(或在项目的某个lib /文件夹下创建的任何帮助器/目录中),以便use_helper('FooBar')帮助程序自动找到它。

因此,如果要为foo()函数创建自定义助手 FooBar ,请创建文件 lib / helper / FooBarHelper.php

function foo() {echo "foo!"; }

在模板中使用它:

use_helper('FooBar')
....

foo(); //outs "foo!"