微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – Twig访问对象

我想访问一个树枝模板中的一个对象的值.

通常我会得到这样的回报:

echo $lang->get("test");

但是如何在树枝上做同样的事情呢?

我尝试了很多方法,但没有人工作.

例如我试过:

{{ attribute(lang,get,'test') }}

结果

Catchable Fatal error: Argument 3 passed to
Twig_Node_Expression_GetAttr::__construct() must be an instance of
Twig_Node_Expression_Array,instance of Twig_Node_Expression_Constant
given

谢谢

你想要做的是在一个Twig模板中的参数上调用一个对象的方法.我不认为这是支持的,因为它可能被认为是一个坏主意. Twig支持一个对象上的getter的概念,而这些参数无需参数:
{{ lang.test }}

将尝试按以下顺序调用以下其中一个

> $lang->测试
> $lang-> test()
> $lang-> gettest()
> $lang-> istest()

如果对象实现任何这些访问器和约定,Twig将会找到它.在这个约定之外的任何东西,比如get(‘test’)都不是Twig哲学的一部分.而且这不是一般广泛使用的成语,所以你应该坚持上述方法之一.

http://twig.sensiolabs.org/doc/templates.html#variables.

您可以实现__isset,__get或__call magic方法支持这些访问器方法之一.

原文地址:https://www.jb51.cc/php/130995.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐