2016-09-03 13 views
-1

私はoutout以下ばかりメートル:私はJSONレスポンスでは、次の出力のようにしたいPHPで配列オブジェクトを取得する方法は?

"sendto": { 
     "0": { 
      "userid": "1", 
      "username": "jagat", 
      "isAccepted": "NO" 
     }, 
     "1": { 
      "userid": "4", 
      "username": "Rahil", 
      "isAccepted": "NO" 
     }, 
    } 

"sendto": [ 
    { 
    "userid": "1", 
    "username": "jagat", 
    "isAccepted": "NO" 
    }, 
    { 
    "userid": "4", 
    "username": "Rahil", 
    "isAccepted": "NO" 
    } 
] 

私を助けてください。おかげ

+1

これまでにお試しいただいた内容は? –

+0

私は与えられたjsonの応答outout(2)のような配列を作成しようとしています。しかし、私は上記の出力(1)のようになります。 –

+1

彼らが今までに書いたコードを見ることが求められています。それを見ることなく、あなたはあなた自身がこの問題を解決しようとしておらず、他の人にあなたのために仕事をさせようとしていると仮定します。 –

答えて

0

PHPは、キーは、0から始まる連番でない場合はJavaScriptで配列キーを持っていないため、json_encode持つオブジェクトに配列を変換(がインデックスを有する)が、それができるPHPで。

だから、PHPでこのような何か...

$data = [["foo" => "bar"],["baz" => "quix"],3=>["quax" => "quacks"]]; 
echo json_encode($data); 

は、あなたは常に配列をしたいのであれば、あなたがjson_encodeで符号化前array_valuesを使用して確認する必要があります...

 
{ 
    "0": { 
     "foo": "bar" 
    }, 
    "1": { 
     "baz": "quix" 
    }, 
    "3": { 
     "quax": "quacks" 
    } 
} 

を与えます。配列のキーは、彼らが安全に配列としてJSONにシリアライズすることができることを意味バック0, 1, 2になりますので

$data = [["foo" => "bar"],["baz" => "quix"],3=>["quax" => "quacks"]]; 
echo json_encode(array_values($data)); 

今、あなたは...

 
[ 
    { 
     "foo": "bar" 
    }, 
    { 
     "baz": "quix" 
    }, 
    { 
     "quax": "quacks" 
    } 
] 

を取得します。それ以外の場合、PHPは"0", "1", "3"というキーを持つオブジェクトを作成することを前提としています。

関連する問題