我从Google API获取JSON字体列表,我想在我的PHP应用程序中使用它。我需要一种方法来更轻松地访问此JSON对象。例如,我希望能够轻松地调用字体及其属性:
$font['abc']['variants']
......等等。
所以JSON看起来像这样:
$fonts = '
{
"kind": "webfonts#webfontList",
"items": [
{
"kind": "webfonts#webfont",
"family": "Yesteryear",
"variants": [
"regular"
],
"subsets": [
"latin"
]
},
{
"kind": "webfonts#webfont",
"family": "Zeyada",
"variants": [
"regular"
],
"subsets": [
"latin"
]
}
]
}
';
我正在使用它将其解析为数组:
$fonts = json_decode( $fonts, true );
$var_dump( $fonts['items'] );
这样的var转储会显示:
array (size=2)
0 =>
array (size=4)
'kind' => string 'webfonts#webfont' (length=16)
'family' => string 'Yesteryear' (length=10)
'variants' =>
array (size=1)
0 => string 'regular' (length=7)
'subsets' =>
array (size=1)
0 => string 'latin' (length=5)
1 =>
array (size=4)
'kind' => string 'webfonts#webfont' (length=16)
'family' => string 'Zeyada' (length=6)
'variants' =>
array (size=1)
0 => string 'regular' (length=7)
'subsets' =>
array (size=1)
0 => string 'latin' (length=5)
所以使用上面的数组,我无法轻松检索出我想要的数据。所以我不确定这是否意味着我必须重建阵列,如果是,那该怎么办?
感谢您的光临。
答案 0 :(得分:3)
尝试获取值:在这里,您将获得items
foreach($fonts['items'] as $val){
echo $val['kind'];
echo $val['family'];
print_r($val['variants']);
echo "======================<br>";
}
答案 1 :(得分:0)
我认为你正在寻找这样的事情: Example
答案 2 :(得分:0)
希望这段代码能帮到你
$res1=json_decode($fonts,true);
$res2=$res1['items'];
$count=count($res2);
for($i=0;$i< $count;$i++)
{
echo $res2[$i]['variants'][0];
}