2016-11-06 5 views
0

私は、JSONリクエストによってAPIに値を渡そうとしています。多次元の値をjson配列に渡すにはどうすればいいですか?

$payload = json_encode(array("phones"=> "971xxxxxxx", 
"emails"=> "[email protected]", 
"id"=> "1" 
)); 

上記のコードのように、以下の多次元の値をjsonリクエストに渡す方法はありますか?

{ "contactList": [ { "phones" : ["+91 9000000034"], "emails" : [[email protected]], "id" : 1 }, { "phones" : ["+91 903-310-00-001"], "emails" : [[email protected]], "id" : 2 } ] } 
+0

'(配列( '電話番号=>' xxxx ')、配列('電話 '=>' dgdfs '))));) –

+0

{"contactList":["22"、 "46"]、 "conferenceId":167}のような形式で、どうやってそれを行いますか? – Harikris

答えて

0

json_encodeに渡す前に、データを入れ子/多次元配列として格納します。

$array = array(); 
$array["contactList"] = array(
array( "phones"=> "971xxxxxxx", 
     "emails"=> "[email protected]", 
     "id"=> "1" 
    ), 
array( "phones"=> "+91 903-310-00-001", 
     "emails"=> "[email protected]", 
     "id"=> "2" 
    ) 
);  

$payload = json_encode($array); 

echo $payload; 

あなたは、アレイ内の電話番号などの値を保持する必要がある場合は、単純に配列でそれらをラップ

{"contactList":[{"phones":"971xxxxxxx","emails":"[email protected]","id":"1"},{"phones":"+91 903-310-00-001","emails":"[email protected]","id":"2"}]} 

を生成します。

+0

{"contactList":["22"、 "46"]、 "conferenceId":167}のような形式の場合は、 – Harikris

+0

連絡先リストの値は値の配列として保存する必要がありますが、会議IDは単一の値として保存する必要があります。この特定のインスタンスでは、データ型がintであることを確認して、文字列引用符が適用されないようにします。データソースから変換する場合はキャストできます。 –

関連する問題