関数からjsonを返す方法はありません。私が試したコードは次のとおりです。関数からjsonを返し、変数に渡します。
function buildJson(){
... $json_source is parsed by http (this works)
$source = json_decode($json_source, true);
$res = $source['child'];
echo count($res); // 6
return $res;
//return json_encode($res);
}
//////
$json_res = buildJson();
echo count($json_res); // 0
for($i = 0; $i < count($json_res); $i++){
$item = $json_res[$i];
}
どのように動作しますか、私はとても多くのことを試みましたが、$ json_resのカウントは毎回0ですか?申し訳ありませんが多くの経験がありません:)
EDIT: "$ json_source"は、関数buildJson()内で生成されます。私はそれが "echo count($ res); // 6"であることをテストしました。関数内の$ resのすべての値にアクセスすることはできますが、戻って外にアクセスすることはできません。だから "$ json_source"は問題ではありません。他のアイデア?
解決済み:これで問題が見つかりました。私はbuildJson()内でbuildJson()を別の時間呼び出すコーディングの理由からこの問題を発見しました。今私は別の方法でそれをコード化し、今動作します。ありがとう@all :)
buildJsonのparamが –
読み取りが欠落しています。http://stackoverflow.com/help/mcve – walther
私はそれがHTTP構文解析の$ json_sourceを提供することはできません。 – Mona935