【发布时间】:2023-03-11 11:36:08
【问题描述】:
关于 SO 的第一个问题,它是一个真正的 RTM 候选人。但我向你保证,我已经看过但似乎找不到。当我错过了一件简单的事情时,我会很高兴地做一个#headpalm。
试图弄清楚 Zend 框架并遇到以下语法:
$this->_session->{'user_id'}
我从未见过用于访问看似成员变量的花括号语法。和它有什么不同
$this->_session->user_id
我假设 _session 无关紧要,但将其包含在问题中,因为它可能不相关。
花括号是否只是一个尝试包装复合变量名称 user_id 的清洁约定?还是某种特殊的访问器?
任何指向 TFM 以便我可以 R up 的指针将不胜感激。
非常感谢。请温柔一点。
【问题讨论】:
-
感谢大家的快速和出色的回答。有了这个对 SO 的温和启动,我被鼓励更多地使用它。希望我能帮助回答问题,而不仅仅是问他们。干杯。
-
有趣的花絮:可以用 curly 语法调用方法,结果和直接调用方法一样快。使用 call_user_func 更通用,但是使用 call_user_func(array($obj,$method),"parm1","parm2") 而不是 $obj->{$method}("parm1,"parm2" 需要两倍的时间);
-
而且后者也更具可读性。至少国际海事组织。实际上,在这种情况下,我经常省略方法名称上的花括号:
$obj->$method($params)
标签: php syntax variables curly-braces