2013-01-03 38 views
1

在Symfony2中的入门之旅我碰到这样的:差异的Symfony2

{# array('user' => array('name' => 'Fabien')) #} 
{{ user.name }} 

{# force array lookup #} 
{{ user['name'] }} 

{# array('user' => new User('Fabien')) #} 
{{ user.name }} 
{{ user.getName }} 

{# force method name lookup #} 
{{ user.name() }} 
{{ user.getName() }} 

有人能解释我的区别?

+0

我弄错了什么,或者你是否意指小枝,而不是yaml?没有看到,这与yaml有关:X – KingCrunch

+0

糟糕,当然,我的意思是枝条。不知道我是怎么想到yaml的。 – xotix

回答

1

在树枝时,你只需要使用foo.barfoo可能是一个数组(在这种情况下树枝预期的关键bar),或一个对象,而它预计无论是访问属性bar,一个方法getBar(),我想我的东西忘记。然而,问题在于,树枝试图解决访问本身的问题,并且可以随意插入,无论你喜欢什么(除了它必须以一种结构化数据的形式)。如果你使用特定的访问方法,你可以从树枝猜测:当你拨打foo.bar()这显然是一种方法。 (必须说,我从来没有听说过“强制查找”:X)

+0

aha。这很有道理,谢谢。认为它背后更多。 :) – xotix

+1

不用,在{{user.getAdress()}}中读取{{user.address}}'中的'{{user.name}}而不是'{{user.getName()}} ,因为它更自然。那就是什么模板化:让简单的可视化...是的,模板^^(对于结构化数据,数组越来越少见) – KingCrunch