我有一个如下所示的数组:
array(1) {
["brookybear"]=> array(5) {
["id"]=> int(20217894)
["name"]=> string(10) "Brookybear"
["profileIconId"]=> int(603)
["summonerLevel"]=> int(30)
["revisionDate"]=> float(1397388011000)
}
}
当我的var_dump();它。我试图使用foreach循环来获取" name"超出它的价值。然而,当我回应它时,我只能得到" B"作为输出,而不是完整的Brookybear。
这是我的foreach循环:
$url="APIURL";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
$array = json_decode($result, true);
foreach($array['brookybear'] as $champs)
{
echo $champs['name'];
}
答案 0 :(得分:2)
看起来你正在循环'brookybear'项而不是父数组。
如果您想查看所有name
的所有$champ
:
$array = json_decode($result, true);
foreach($array as $champs)
{
echo $champs['name'];
}
或更清楚:
$champions = json_decode($result, true);
foreach($champions as $champ)
{
echo $champ['name'];
}
答案 1 :(得分:0)
为什么使用循环来获取值?如果我这样做,我只会写:
<?php
if ( isset( $array['brookybear']['name'] ) ) {
echo $array['brookybear']['name'];
}
答案 2 :(得分:0)
如果第一个字符只显示在字符串中,你知道我现在的原因是什么,
。示例
$my_var = "My name is umair";
以下同样使用此变量作为数组
$my_var[0] = "My name is umair";
现在如果你回显数组var它将只显示输出中的第一个字母是“M” 只需更改数组变量就可以了。