Symfony 1.4,在自定义任务中访问模块级库


symfony 1.4, accessing module level lib in a custom task

我有 2 个应用程序:前端和后端。

我正在使用以下命令运行自定义任务:

php symfony newCron:createClusters --application=frontend

在每个应用程序中,我都有一个lib文件夹和一个modules文件夹。通过上面的命令,只有这个apps->frontend->lib文件夹可以访问,而apps->frontend->modules->module1->lib中的lib文件夹是不可访问的。

如何访问任务中的模块级库文件?

我尝试在配置方法中使用 addOption 命令,但仍然没有任何反应。

我认为您有两种选择。

"交响方式"

使用 autoload.ymlapps/frontend/config/autoload.yml ):

autoload:
  my_module_lib:
    path:        %SF_APP_MODULE_DIR%/name_of_your_module/lib
    recursive:   true

"php旧方式"

在任务中使用基本require_once

class createClustersTask extends sfBaseTask
{
  /**
   * @see sfTask
   */
  protected function configure()
  {
    require_once sfConfig::get('sf_app_module_dir') . '/name_of_your_module/lib/name_of_your_first_lib.class.php';
    require_once sfConfig::get('sf_app_module_dir') . '/name_of_your_module/lib/name_of_your_second_lib.class.php';