Php 使用数组从json文件获取数据

Php 使用数组从json文件获取数据,php,json,Php,Json,我在使用内置php函数从json文件获取特定数据时遇到困难。 让我向您展示一些代码: Json文件: {"votes": [ { "date":"November 3rd, 2017 10:08 PM EST", "timestamp":1509743288, "nickname":"Th3ProHack3R", "claimed":"0" }, { "date":"November 3rd, 2017 10:06 PM EST", "timestamp":1509743160, "nickna

我在使用内置php函数从json文件获取特定数据时遇到困难。 让我向您展示一些代码:

Json文件:

{"votes": [ { "date":"November 3rd, 2017 10:08 PM EST", "timestamp":1509743288, "nickname":"Th3ProHack3R", "claimed":"0" }, { "date":"November 3rd, 2017 10:06 PM EST", "timestamp":1509743160, "nickname":"TheKing", "claimed":"0" },  { "date":"November 3rd, 2017 09:45 PM EST", "timestamp":1509741902, "nickname":"some0ne", "claimed":"0" }   ] }
我的php代码:

$json= file_get_contents("myfile.json");
$data =  json_decode($json, true);
$voter1 = $data['votes']->nickname;
echo $firstvoter;
我让这段代码处理一个非常基本的json代码,没有数组。但这里有点不对劲,因为我无法得到选民的昵称

我只是有点困惑,所以我想做的是收集选民的昵称,然后用html将他们放在桌子上


我希望我能得到一个详细的答案,这样我就能理解一些令人困惑的东西。

您需要获取json对象的数组。hear“voates”是json对象,因此$data['voates'][0]是返回的第一个数组请参见代码

<?php 

$json= file_get_contents("myfile.json");
$data =  json_decode($json, true);
$voter1 = $data['votes'][0];
$voter2 =$data['votes'][1];
print_r( $voter1);
echo "<br>".$voter1["nickname"];
echo "<br>".$voter2["nickname"];

?>

您需要获取json对象的数组。hear“voates”是json对象,因此$data['voates'][0]是返回的第一个数组请参见代码

<?php 

$json= file_get_contents("myfile.json");
$data =  json_decode($json, true);
$voter1 = $data['votes'][0];
$voter2 =$data['votes'][1];
print_r( $voter1);
echo "<br>".$voter1["nickname"];
echo "<br>".$voter2["nickname"];

?>

在转换为json解码后,您的数组如下所示

Array
(
    [votes] => Array
        (
            [0] => Array
                (
                    [date] => November 3rd, 2017 10:08 PM EST
                    [timestamp] => 1509743288
                    [nickname] => Th3ProHack3R
                    [claimed] => 0
                )

            [1] => Array
                (
                    [date] => November 3rd, 2017 10:06 PM EST
                    [timestamp] => 1509743160
                    [nickname] => TheKing
                    [claimed] => 0
                )

            [2] => Array
                (
                    [date] => November 3rd, 2017 09:45 PM EST
                    [timestamp] => 1509741902
                    [nickname] => some0ne
                    [claimed] => 0
                )

        )

)
在这种情况下,您需要昵称:

foreach ($jsonData['votes'] as $key => $value) {
    echo "Nickname : ". $value['nickname']."<br/>";
}
foreach($jsonData['voates']作为$key=>$value){
echo“昵称:”.$value['昵称].“
”; }
在转换为json解码后,您的数组如下所示

Array
(
    [votes] => Array
        (
            [0] => Array
                (
                    [date] => November 3rd, 2017 10:08 PM EST
                    [timestamp] => 1509743288
                    [nickname] => Th3ProHack3R
                    [claimed] => 0
                )

            [1] => Array
                (
                    [date] => November 3rd, 2017 10:06 PM EST
                    [timestamp] => 1509743160
                    [nickname] => TheKing
                    [claimed] => 0
                )

            [2] => Array
                (
                    [date] => November 3rd, 2017 09:45 PM EST
                    [timestamp] => 1509741902
                    [nickname] => some0ne
                    [claimed] => 0
                )

        )

)
在这种情况下,您需要昵称:

foreach ($jsonData['votes'] as $key => $value) {
    echo "Nickname : ". $value['nickname']."<br/>";
}
foreach($jsonData['voates']作为$key=>$value){
echo“昵称:”.$value['昵称].“
”; }
我明白了。但是你的密码对我不起作用。[编辑:它起作用了。]它起作用了@whoami,但我还有一个问题,我应该再问一个问题吗?我明白了。但是你的密码对我不起作用。[编辑:它起作用了。]它起作用了@whoami,但我还有一个问题,我应该再问一个问题吗?