如何在php中获取json
我从json获得了一个数组,但我不知道如何获取bookTitle和url。 如何读取阵列中的这些项如何在php中获取json,php,arrays,json,Php,Arrays,Json,我从json获得了一个数组,但我不知道如何获取bookTitle和url。 如何读取阵列中的这些项 $data = file_get_contents('C:\Users\rsanchro\Desktop\ftp brasil4-9-2015\moderna_plus-historia\MPCH-C05-P1-1.0.1-ZIP-PT\resource.json'); $datos = json_decode($data, true); print_r($datos);die; Result
$data = file_get_contents('C:\Users\rsanchro\Desktop\ftp brasil4-9-2015\moderna_plus-historia\MPCH-C05-P1-1.0.1-ZIP-PT\resource.json');
$datos = json_decode($data, true);
print_r($datos);die;
Results:
Array
(
[topBarColor] => #000000
[bookId] => 2aef55bf3a9dec377b4f16a8048c7f84
[bookTitle] => História
[unitId] => MPCH-C05-P1
[unitTitle] => 108-127-MPCH-C05-P1-M
[unitResources] => Array
(
[0] => Array
(
[type] => 03
[url] => resources/mphis_c06av_escultura_ontem.mp4
[urlToShowInsideUnit] => #/compId/id0a33b2a0471e0f444bc0a88b5bb55714
[title] => A escultura ontem e hoje
[page] => 123
)
)
)
用这个
print_r(utf8_decode($datos['bookTitle']));
if(is_array($datos['unitResources']) && count($datos['unitResources']) > 0){
foreach($datos['unitResources'] as $key => $value){
print_r($value['url']);
}
}
如果您只有一个数据,请使用以下命令
$bookTitle=$datos['bookTitle'];
$url=$datos['unitResources'][0]['url'];
foreach($datos as $dato){
$bookTitle=$dato['bookTitle'];
$urls=array();
foreach($datos['unitResources'] as $url){
$urls[]=$url['url'];
}
echo '<br>Book Title :'.$bookTitle;
echo '<br>urls :';
foreach($urls as $url){
echo $url.'<br>';
}
}
如果阵列中有多个数据,请使用以下命令
$bookTitle=$datos['bookTitle'];
$url=$datos['unitResources'][0]['url'];
foreach($datos as $dato){
$bookTitle=$dato['bookTitle'];
$urls=array();
foreach($datos['unitResources'] as $url){
$urls[]=$url['url'];
}
echo '<br>Book Title :'.$bookTitle;
echo '<br>urls :';
foreach($urls as $url){
echo $url.'<br>';
}
}
foreach($dato作为$dato){
$bookTitle=$dato['bookTitle'];
$url=array();
foreach($datos['unitResources']作为$url){
$url[]=$url['url'];
}
回音“
书名:”.$bookTitle;
回显“
URL:”;
foreach($url作为$url){
回显$url。“
”;
}
}
对于您提到的示例数组。您可以使用第一种方法。
但是,由于您使用的是数组,因此最好使用第二种方法 试试这个
echo "Title:".$datos['bookTitle']; //To print book title
//To print url
if(is_array($datos['unitResources']) && count($datos['unitResources']) > 0){
foreach($datos['unitResources'] as $key => $value){
echo "URL:".$value['url'] ;
}
}
我还建议您看看jsonselect库。它提供了一种直观的选择语法,该语法是按照CSS选择器语法建模的 JSON选择项目站点: PHP实现: