PHP:如何回显返回数组方法?

PHP:如何回显返回数组方法?,php,arrays,Php,Arrays,我有一个类具有此方法: public function user_status() { $json = //some code here... $result = json_decode($json, true); $status = array( 'key1' => $val1, 'key2' => $val2

我有一个类具有此方法:

public function user_status()
    {    
            $json = //some code here...
            $result = json_decode($json, true);
            $status = array(
                'key1' => $val1,
                'key2' => $val2
            );
            return $status;

    } 
这样打电话的时候:

$user = new Class();
echo $user->user_status();
它只返回单词
Array
但当这样倾倒时:

echo "<pre>User: ", print_r($user->user_status(), TRUE), "</pre>";
我想输出数组值,所以我试着像下面那样调用它,但它给了我一个解析错误

$array = $user->user_status();

echo $array['key2'];
输出数组值的正确语法是什么?

这是语法

$array = $user->user_status();
echo $array['key2'];
这就是语法

$array = $user->user_status();
echo $array['key2'];
在PHP 5.3或更早版本中:

echo $user->user_status()['key2'];
在PHP 5.4及更新版本中:

echo $user->user_status()['key2'];
PHP 5.4引入了数组解引用,这使我们可以稍微缩短语法。

在PHP 5.3或更早版本中:

echo $user->user_status()['key2'];
在PHP 5.4及更新版本中:

echo $user->user_status()['key2'];
PHP5.4引入了数组解引用,这使我们可以稍微缩短语法。

试试看

$status = $user->user_status();
echo $status['key2'];
user_status()本身的返回值是一个数组,因此您可以“将函数调用视为变量名对待”。

Try

$status = $user->user_status();
echo $status['key2'];

user_status()本身的返回值是一个数组,因此您可以“将函数调用视为变量名对待”。

您必须响应!虽然我尝试了后一种方法,但它给了我一个解析错误,但我不确定为什么会被否决。必须是php版本。+1-我最喜欢这个答案。简洁明了。我想在顶部添加5.4+的内容:)我喜欢@zavg answer,只是因为变量命名更清晰,但为了完整性,我会选择这个答案!谢谢大家的帮助。你必须回应!虽然我尝试了后一种方法,但它给了我一个解析错误,但我不确定为什么会被否决。必须是php版本。+1-我最喜欢这个答案。简洁明了。我想在顶部添加5.4+的内容:)我喜欢@zavg answer,只是因为变量命名更清晰,但为了完整性,我会选择这个答案!谢谢大家的帮助。以前尝试过,但它给了我一个解析错误。我怀疑这是因为我的php版本不支持它。不过还是要谢谢你!是 啊以前尝试过,但它给了我一个解析错误。我怀疑这是因为我的php版本不支持它。不过还是要谢谢你!