[英]Why Twig falls back to object when a property doesn't exist?
我正在尝试在模板上打印对象的属性:
{{ MyObject.itsProperty }}
问题是,未设置此属性, __isset
将返回false
而__get
将返回null
。
Twig尝试打印MyObject而不是不打印任何东西,而将其留在那:
可恢复的致命错误:无法在..... vendor / twig / twig / lib / Twig / Environment.php(378)中将类MyObject的对象转换为字符串:第54行的eval()代码
将strict_variables
设置为false
并没有帮助。 怎么处理呢?
正如@GentlemanMax指出的那样,Twig将尝试调用方法以及属性来尝试解析点运算符。 这可能会导致调用__get和__call魔术方法。
我的问题是__call的实现返回了$ this,导致我上面提到的错误。
谢谢@GentlemanMax和其他所有人对我的帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.