试着学习JSON。做一些简单的练习,但无法通过这个练习。我重新看了30遍这个教程。有什么指示吗?
以下是JSON:
{
"name": "Username",
"profile_name": "profile_username",
"profile_url": "http://myapi.net/profile_username"
"courses": [
{ "name": "English 340" },
{ "name": "History 202" },
{ "name": "Underwater Basket Weaving" }
]
}它位于一个名为$JSON_array的变量中,这是我试图使用的foreach循环,用于提取课程名称并将其放入无序列表中。
<ul>
<?php for( $i = 0; $i < count($JSON_array->courses); $i++ ): ?>
echo '<li>';
echo $JSON_array->{'courses'}[$i]->{'name'};
echo '</li>';
<?php endfor; ?>
</ul>它什么都不做..。我的源代码显示空列表项
发布于 2013-11-27 06:43:28
你错过了,之后的profile_url
$json = '{
"name": "Username",
"profile_name": "profile_username",
"profile_url": "http://myapi.net/profile_username",
"courses": [
{ "name": "English 340" },
{ "name": "History 202" },
{ "name": "Underwater Basket Weaving" }
]
}';
$arr = json_decode($json);
?>
<ul>
<?php for( $i = 0; $i < count($arr->courses); $i++ ):
echo '<li>';
echo $arr->{'courses'}[$i]->{'name'};
echo '</li>';
endfor; ?>
</ul>发布于 2013-11-27 06:47:15
试试这个:
$json = '{"name": "Username","profile_name": "profile_username","profile_url": "http://myapi.net/profile_username",
"courses": [
{ "name": "English 340" },
{ "name": "History 202" },
{ "name": "Underwater Basket Weaving" }
]
}';//comma was missing after profile_url
$arr = json_decode($json,true);//encode as an associative array
<ul>
<?php
foreach($arr['courses'] as $course){
echo '<li>';
echo $course['name'];
echo '</li>';
}
?>
</ul>发布于 2013-11-27 06:43:00
尝尝这个
<ul>
<?php foreach($JSON_array->courses as $course): ?>
echo '<li>';
echo $course->name;
echo '</li>';
<?php endforeach; ?>
</ul>更新:此外,您的JSON是无效的!!"profile_url": "http://myapi.net/profile_username"您在该行末尾缺少逗号
https://stackoverflow.com/questions/20235554
复制相似问题