如何从PHP数组中获取单个值

wow*_*wow 67 php arrays

print_r($myarray)

Array
(
    [0] => Array
    (
        [id] => 6578765
        [name] => John Smith
        [first_name] => John
        [last_name] => Smith
        [link] => http://www.example.com
        [gender] => male
        [email] => email@domain.com
        [timezone] => 8
        [updated_time] => 2010-12-07T21:02:21+0000
    )
)
Run Code Online (Sandbox Code Playgroud)

问题,如何获得$myarray单值如:

echo $myarray['email'];  will show email@domain.com
Run Code Online (Sandbox Code Playgroud)

Dan*_*man 103

看看你的钥匙和缩进print_r:

echo $myarray[0]['email'];

echo $myarray[0]['gender'];
Run Code Online (Sandbox Code Playgroud)

...等等

  • @MichelJoanisse 可能是因为您在远程服务器上使用的是较旧的 PHP 版本。PHP <5.4 (http://php.net/manual/en/language.types.array.php#example-102) 不支持该语法。 (2认同)

小智 41

使用array_shift功能

$myarray = array_shift($myarray);
Run Code Online (Sandbox Code Playgroud)

这会将数组元素向上移动一级,您可以在不使用[0]键的情况下访问任何数组元素

echo $myarray['email'];  
Run Code Online (Sandbox Code Playgroud)

将显示email@domain.com


Mik*_*iak 21

我想你想要这个:

foreach ($myarray as $key => $value) {
    echo "$key = $value\n";
}
Run Code Online (Sandbox Code Playgroud)


Fra*_*ula 8

您也可以使用array_column()。可从PHP 5.5获得:php.net/manual/en/function.array-column.php

它从column_key标识的数组的单个列中返回值。(可选)您可以提供index_key,以根据输入数组中index_key列中的值来索引返回数组中的值。

print_r(array_column($myarray, 'email'));
Run Code Online (Sandbox Code Playgroud)