0 レビュー
2 回答
php-この配列を再配置する方法
PHPコーディングについて1つ質問があります!
Googleスプレッドシートにデータを送信したいのですが、すべてうまくいきました。アプリを作成しました。
アプリからデータを取得してシートに送信しましたが、転送されたデータが適切に並べ替えられていません。
コードは以下のとおりです:
foreach($processor->maildata As $data){
if( in_array($data[_FF_DATA_TITLE].$data[_FF_DATA_ID], $bffields) ){
$rowData[] = [$data[_FF_DATA_VALUE]];
}
}
データを$rowData[]=[["test"],["test"],["test"]]として取得していますが、 $rowData[]=[["test","test","test"]]
としてソートする必要があります。
データは常にA1行で上下に並べて取得しますが、行ごとにシートで並べ替える必要があります(A、B、C ..)
うまく説明できたらいいのに!
助けて!
よろしく
わからない
0
レビュー
答え :
解決策:
$data[_FF_DATA_VALUE]
の周りに[]を使用すると、実際にPHPに追加するように指示します。データ配列から新しい配列への値。
必要に応じて:
- $ rowDataには1つの配列(行)が含まれます
- 値を含むこの配列(例:
test )
..次のように、データ配列の周囲の
[]
を省略してください。foreach($ Processor-> maildata As $ data){ if(in_array($data[_FF_DATA_TITLE]。$data[_FF_DATA_ID]、$ bffields)){ $ rowData [] = $data[_FF_DATA_VALUE]; } }
わからない
0
レビュー
答え :
解決策:
問題を解決しました。解決策は次のとおりです:
foreach($processor->maildata As $data){
if( in_array($data[_FF_DATA_TITLE].$data[_FF_DATA_ID], $bffields) ){
$rowData[]=$data[_FF_DATA_VALUE];
}
}
$requestBody = new Google_Service_Sheets_ValueRange(['values' => [$rowData]]);
$params =['valueInputOption' => 'RAW'];
$insert=["valueDataOption" => "INSERT_RAW"];
$this->response = $this->service->spreadsheets_values->append($gdata->spreadsheet_id, $range, $requestBody, $params, $insert);
コードのこの部分:
前:
$requestBody = new Google_Service_Sheets_ValueRange(['values' => $rowData]);
今:
$requestBody = new Google_Service_Sheets_ValueRange(['values' => [$rowData]]);
「$rowData」を角かっこ「[]」で囲みました。
目的の解決策が得られ、データはシート上で適切に並べ替えられました!
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。