JSON URLからPHP Webページにデータを取得しようとしています。元のURLは次のとおりです。JSONからPHPへの構文解析が意図したとおりに機能しない
http://reverseip.logontube.com/?url=104.28.23.18&output=json
URLは、ホストのIPおよびそのIPでホストされているすべてのドメインを返します。
JSONオンラインツールを使用して、出力をデコードしようとしました。出力は次のようになります。
stdClass Object ([hostip] => 104.28.23.18 [hostname] => 104.28.23.18 [response] => stdClass Object ([domain_count] => 14 [domains] => Array ([0] => th998877.com [1] => careerplanningbooks.com [2] => humanhangbag.com [3] => azbabycarez.net [4] => travellersrights.com [5] => big-booobs-pics.net [6] => enddepression.us [7] => alumnihighschool.net [8] => rubilax.com [9] => xtcts.com [10] => car-hoken-navi.com [11] => lightpostlocalexperts.com [12] => dublo.net [13] => 123savemp3.info)))
上記は生データです。 それから、PHP関数を使ってそのデータをWebページに表示しました。これは、PHPスクリプトが使用されている:
$string = file_get_contents("http://reverseip.logontube.com/?url=104.28.23.18&output=json");
$json = json_decode($string, true);
foreach ($json as $key => $value) {
if (!is_array($value)) {
echo $key . '=>' . $value . '<br />';
} else {
foreach ($value as $key => $val) {
echo $key . '=>' . $val . '<br />';
}
}
}
そして、これが私のWebページに表示され、私はPHPからもらった出力です:
hostip=>104.28.23.18
hostname=>104.28.23.18
domain_count=>14
domains=>Array
、私の質問は:上記の最後の行には、なぜドメインを配列Array?私はth998877.com careerplanningbooks.comなどの各ドメインの名前を期待していました。元のJSON URLを使用してPHPでこれらのドメインをどのように表示できますか?
'$のval'が配列であるとき - それは文字列表現だあなたは配列の値を印刷したい場合は、'「アレイ」 'される - '再びforeach'を行います。 –
あなたは私に追加するコードを教えてもらえますか? – Online
ありがとう、Tonzaは私に追加のコードをくれました。 – Online