2017-07-20 12 views
-1
このよう

マイdata_array:爆縮結果を配列に保存するにはどうすればいいですか?

アレイ( [0] => 1 [1] => 2 [2] => 3)このような

マイコード:

public function test(Request $request) 
{ 
    $client = new GuzzleHttpClient(); 
    ... 
    $concat_data = implode(',', $data_array); 
    $result = $client->request('POST', $url, [ 
     'headers'=>[ 
      'content-type'=>'application/json', 
      'Authorization'=> 'Bearer '.auth()->user()->api_token 
     ], 
     'json'=>['ids'=>[$concat_data]] 
    ]); 
    $content = json_decode($result->getBody()->getContents()); 
} 

コードが実行されると、完全に機能しません。私はこのような静的データをしようとするとそれはちょうど、ID = 1

でデータを更新しかし:

public function test(Request $request) 
{ 
    $client = new GuzzleHttpClient(); 
    ... 
    $concat_data = implode(',', $data_array); 
    $result = $client->request('POST', $url, [ 
     'headers'=>[ 
      'content-type'=>'application/json', 
      'Authorization'=> 'Bearer '.auth()->user()->api_token 
     ], 
     'json'=>['ids'=>[1,2,3]] 
    ]); 
    $content = json_decode($result->getBody()->getContents()); 
} 

それは動作します。それは、成功は、配列で結果を内破格納する私の方法は、どのように私はこの問題を解決することができ、まだ

間違っているようで、ID = 1、ID = 2、ID = 3

でデータを更新しますか?

答えて

2

implodeは、APIは、生の配列を受け入れますようにあなたの作業静的バージョンからのに対し、それが見え、文字列に配列を変換するコードが実行された場合、それはIDの値を更新します

。文字列「1,2,3」を送信していますが、これはわかりません。

あなただけ

'json' => ['ids' => $data_array] 

を使用し、完全にimplode呼び出しをスキップすることができるはずです。

+0

素晴らしいです。ありがとう –

関連する問題