簡體   English   中英

在循環中根據數組索引推送數組值

[英]Push array value based on array index in loop

我想根據循環內的索引推送數組。 但是$q[$i]被檢測為字符串。 如何解決?

$smallPhrase = array(35) {
  [0]=>
  array(2) {
    [0]=>
    string(12) "terima kasih"
    [1]=>
    string(2) "40"
  }
  [1]=>
  array(2) {
    [0]=>
    string(8) "kemudian"
    [1]=>
    string(2) "20"
  } ... 
}
$q = array();
for($i=0; $i < count($smallPhrase); $i++) {
      array_push($q[$i], $smallPhrase[$i][0],$smallPhrase[$i][1]);
    }

預期結果 =

    $q[0] = $smallPhrase[0][0],$smallPhrase[0][1];
    $q[1] = $smallPhrase[1][0],$smallPhrase[1][1];
    $q[2] = $smallPhrase[2][0],$smallPhrase[2][1];

這個$smallPhrase也在循環下,所以在下一個循環中數據將被替換,但結構保持不變。

我只是想將$smallPhrase索引 0 推入$q索引 0,所以另一個 $smallPhrase 索引 [0] 將被放在一起。

根據您的最新評論編輯

$q = [];
for ($i=0; $i < count($smallPhrase); $i++) {
    if (empty($q[$i])) {
        $q[$i] = [];
    }
    array_push($q[$i], ...$smallPhrase[$i]);
}
print_r($q);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM