Symfony:在第三方库中使用getPartial()(在$ SFROOT / lib文件夹中)

时间:2011-05-28 16:26:00

标签: php events symfony1

我正在使用Symfony 1.3.8中的事件系统。

我正在为事件处理程序编写逻辑。作为我逻辑的一部分,我可能需要发送电子邮件。因此,我需要获取发送电子邮件的相应部分内容。

这样做的最佳方式是什么?

到目前为止,我有这个:

class MyEventHandler
{
    public static function handleFooEvent(sfEvent $event)
    {
         // I need to get partial here
         // $body = $this->getPartial('somemodule', 'foo', $params);
    }
}

我注意到getPartial()是在sfAction中实现的,如下所示:

  public function getPartial($templateName, $vars = null)
  {
    $this->getContext()->getConfiguration()->loadHelpers('Partial');

    $vars = null !== $vars ? $vars : $this->varHolder->getAll();

    return get_partial($templateName, $vars);
  }

1 个答案:

答案 0 :(得分:0)

要从应用程序的任何位置加载帮助程序,您可以使用以下命令:

sfProjectConfiguration::getActive()->loadHelpers("Partial", "Url", "MyHelper");

然后你就可以得到所需的部分:

get_partial('somemodule/somepartial', $params)