Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php从函数返回访问数组值_Php_Arrays_Scope - Fatal编程技术网

php从函数返回访问数组值

php从函数返回访问数组值,php,arrays,scope,Php,Arrays,Scope,愚蠢的php问题。。。 为什么我不能这样做 echo Auth::getFullUser()[ 'country' ]; 相反,你必须这样做 $user = Auth::getFullUser(); echo $user[ 'country' ]; 不幸的是,语法不允许这样做 AFAIK曾经打算在PHP6中使用该语法,但它的语言/解释器设计很差。 同样的原因,您不能使用“functionname”(函数名),函数不区分大小写。PHP语法只允许在变量表达式(即$user)的末尾使用下标符号(即

愚蠢的php问题。。。 为什么我不能这样做

echo Auth::getFullUser()[ 'country' ];
相反,你必须这样做

$user = Auth::getFullUser();
echo $user[ 'country' ];

不幸的是,语法不允许这样做


AFAIK曾经打算在PHP6中使用该语法,但它的语言/解释器设计很差。


同样的原因,您不能使用“functionname”(函数名),函数不区分大小写。

PHP语法只允许在变量表达式(即
$user
)的末尾使用下标符号(即
),而不是表达式(即
Auth::getFullUser()

我想您可以这样做:
echo(Auth::getFullUser())[“国家”]
一点也不差。如果你不喜欢这种语言,还有很多其他语言供你选择。是的,它并不差,我只是想省去写一个额外的变量…只是好奇。不方便,比方说,你必须明白Kendall Hopkins也使用PHP。我们不是仇恨者,只是诚实的PHP用户。@Coronatus@David明天我会支持我的说法,即PHP,无论是语言还是实现,都是糟糕的。语言没有正式的定义。语言是如何“定义”的很大程度上源于ZEnter实现和PHP.NET上的非正式和模糊的文档。几乎没有什么可以使语法更广义化,比如C语言、C++语言、Haskell语言、Python语言来处理边缘情况。当你考虑到标准函数的命名和参数顺序中的许多不正常时,是完全的垃圾。非常感谢清理它,只是确保没有更好的方法。