0

この質問では有効で複雑な JSON POST リクエストを単純化して形成するのに役立ちました。ただし、サーバー側で奇妙な動作が発生しました。

function postTour(){
  $post = json_decode($_POST['json'];
  $success = false;

  for ($i=0; $i<count($post); $i++){
    $filename = $post[i]['location']['filename'];

  }
}

ここで$filenameは、初期化されることはなく、デバッガーで変数として表示されることもありません。 $post形式のマルチレベル配列を返します

$post[3]
   [0] =>
       location = [ 5 key/value pairs ]
       links = one to n arrays

   [1] =>
       location = [ 5 key/value pairs],
       links = one to n arrays

デバッガーでは、最も外側の配列と位置配列はそれぞれ typestdClassを持ち、links 配列は type を持ちますarray[n]。ただし、内部の情報にはアクセスできません$post。どうしてこれなの?

4

1 に答える 1

4

実際の配列に変換するためにtrue、2 番目の引数としてを渡してみてください。json_decode()

$post = json_decode($_POST['json'], true);
于 2012-06-20T19:59:48.613 に答える