Yii2 Smarty:无法访问$this对象的方法


Yii2 Smarty:无法访问对象方法

我用智能扩展设置了Yii2。

现在我尝试简单地将layouts/main.php文件转换为一个智能模板。为此,我需要访问当前的yiiwebView对象,该对象是作为$this-smarty变量从扩展中给定的。

我已经通过var_dump()和比较验证了smarty $this变量与视图对象是相同的。

问题

根据smarty3文档,我应该能够从如下smarty模板中调用$this对象上的方法:{var_dump($this->head())}

在模板中应用上面的脚本总是返回NULL,这让我猜测没有发生任何方法调用。

问题

如何从一个从PHP提供给smarty的对象中调用方法?

  1. 定义在smarty中使用的变量:$template->assign('app', Yii::$app);
  2. 智能模板中变量的调用方法:{$app->getSession();}

我做错了什么?

(我当前的智能布局:pastebin(

在模板中应用上面的脚本总是返回NULL,这让我猜测没有发生任何方法调用。

head((方法不返回任何内容,所以如果您看到null,那是正确的。

你可以这样调用方法:

{$this->head()}

最新更新