如何访问函数返回的数组的键

发布于 2024-12-26 02:10:49 字数 186 浏览 1 评论 0原文

我希望能够直接从函数的返回值访问数组。

e.g. 
$arr = find_student();
echo $arr['name'];

// I want to be able to do
echo find_student()['name']

我怎样才能完成同样的任务?没有另一行代码?

I want to be able to access the array directly from the return value of the function.

e.g. 
$arr = find_student();
echo $arr['name'];

// I want to be able to do
echo find_student()['name']

How can I accomplish the same ? Without another line of code ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

流年里的时光 2025-01-02 02:10:49

你不能。 PHP 语法解析器受到限制,在当前版本中不允许这样做。

PHP 开发人员为即将发布的 PHP 版本扩展了解析器。这是讨论该问题的博客的链接

You can't. The PHP syntax parser is limited and does not allow it in current versions.

The PHP devs extended the parser for upcoming releases of PHP. Here's a link to a blog talking about it

笔芯 2025-01-02 02:10:49

你不能:)

function find_student() {return array('name'=>123);}
echo find_student()['name'];

结果:
解析错误:语法错误,意外的“[”,期望“,”或“;”

You cant :)

function find_student() {return array('name'=>123);}
echo find_student()['name'];

Result:
Parse error: syntax error, unexpected '[', expecting ',' or ';'

迷路的信 2025-01-02 02:10:49

您可以使用 ArrayObject 执行类似的操作。

function find_student() {
//Generating the array..
$array = array("name" => "John", "age" => "23");

return new ArrayObject($array);
}

echo find_student()->name;
// Equals to
$student = find_student();
echo $student['name'];

缺点是你不能使用像 array_merge() 这样的原生数组函数。但是您可以像访问数组和对象一样访问数据。

You can do something similiar using ArrayObject.

function find_student() {
//Generating the array..
$array = array("name" => "John", "age" => "23");

return new ArrayObject($array);
}

echo find_student()->name;
// Equals to
$student = find_student();
echo $student['name'];

Downside is you cant use native array functions like array_merge() on that. But you can access you data as you would on array and like on an object.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文