如何在PHP中解析这个数组?
昨天我问了这个问题: 这非常有效,现在我必须解析来自服务器的回复——他给了我一个数组,如下例所示。我怎样才能完成这项工作,并获得startTime和以下名称 为什么如何在PHP中解析这个数组?,php,json,Php,Json,昨天我问了这个问题: 这非常有效,现在我必须解析来自服务器的回复——他给了我一个数组,如下例所示。我怎样才能完成这项工作,并获得startTime和以下名称 为什么 <?php $json = file_get_contents("URL"); $data = json_decode($json); $time1 = $data[0][1]['startTime']; ?> 基本上,您用错误的键解析json。检查此代码,它将帮助您 <?php $json =
<?php $json = file_get_contents("URL");
$data = json_decode($json);
$time1 = $data[0][1]['startTime'];
?>
基本上,您用错误的键解析json。检查此代码,它将帮助您
<?php
$json = file_get_contents("URL");
$data = json_decode($json,true);
foreach($data['result'] as $resData)
{
$startTime=$resData['startTime'];
$endtime=$resData['endTime'];
echo($startTime);
foreach($resData['kl'] as $klData)
{
$klname=$klData['name'];
echo($klname);
echo '<br>';
}
foreach($resData['te'] as $teData)
{
$tename=$teData['name'];
$echo($tename);
echo '<br>';
}
}
?>
你能格式化数组以便我们能看到嵌套吗?或者在jsonlint.com上格式化JSON后再发布。你想要
$data['result'][0]['startTime']
,不是吗?@arkascha正确,但我没有得到这样的输出。那么你上面发布的不是你拥有的确切数据。但这正是数据…耶,但你也可以使用for循环,但我喜欢foreach。希望这段代码能完美运行。如果您坚持使用此json_解码($json);然后在foreach循环中需要$data->result,如果您使用json_decode($json,true),那么您可以简单地使用$data['result'](我最喜欢它)我现在尝试了您的代码,但没有得到任何输出。。。有点不对劲…如果你没有任何问题,可以共享url吗。我认为这段代码是正确的,但输出json可能有所不同,因为如果输出json的格式正确,那么这段代码就可以完美地运行。我将它再次粘贴到这里:这就是我在浏览器中查看它时得到的确切代码(没有任何解析命令json_decode!)再次尝试-我检查了日志并获得了“为foreach()提供的无效参数”在线5“
<?php
$json = file_get_contents("URL");
$data = json_decode($json,true);
foreach($data['result'] as $resData)
{
$startTime=$resData['startTime'];
$endtime=$resData['endTime'];
echo($startTime);
foreach($resData['kl'] as $klData)
{
$klname=$klData['name'];
echo($klname);
echo '<br>';
}
foreach($resData['te'] as $teData)
{
$tename=$teData['name'];
$echo($tename);
echo '<br>';
}
}
?>
Radiodata
MUS
Radiodata
MUS
Radiodata
MUS
Radiodata
MUS