假设我们有一个对象$teams
(一个关联数组),其中包含一个提供方法getMembers()
的对象,它返回一个数组,如下所示:
$membersArray = $teams['blueteam']->getMembers();
如果我想访问个别成员,我可以按如下方式进行:
$membersArray[1];
为什么我不能按如下方式在线执行访问,是否有正确的方法在PHP中执行此操作?
$membersArray = $teams['blueteam']->getMembers()[1];
答案 0 :(得分:1)
为什么不创建一个名为getMember()
的替代方法来接受数组索引的参数,而不是尝试像这样访问它。例如:
function getMember( $index )
{
return $this->members[$index];
}
这使得您的代码更加自我记录,方法是指示getMembers
将返回一个成员数组,其中getMember()
将只返回单个数组元素。
答案 1 :(得分:1)
在PHP 5.4.0中添加了对此的支持:
$membersArray = $teams['blueteam']->getMembers()[1];