我正在使用带有此代码的Facebook库:
class FacebookRestClient { ... public function &users_hasAppPermission($ext_perm, $uid=null) { return $this->call_method('facebook.users.hasAppPermission', array('ext_perm' => $ext_perm, 'uid' => $uid)); } ... }
函数定义的开头是什么意思,以及我如何使用这样的库(在一个简单的例子中)
函数名前的&符号表示函数将返回对变量的引用而不是值.
当您想要使用函数来查找引用应该绑定到哪个变量时,通过引用返回很有用.不要使用按引用返回来提高性能.引擎将自动对其进行自动优化.只有在有正当技术理由的情况下才返回引用.
请参阅返回参考.
如前所述,它正在返回一个引用.在PHP 4中,对象按值分配,就像任何其他值一样.这非常不直观,与大多数其他语言的工作方式相反.
为了解决这个问题,引用被用于指向对象的变量.在PHP 5中,很少使用引用.我猜这是遗留代码或代码试图保持与PHP 4的向后兼容性.