PHP
array

2次元配列の中身を全部移動し、空チェックを行う

やりたいこと

2次元配列$tのそれぞれの要素から一つづつ空になるまで取り出し、1次元配列にする

最初にこう組んだ

$tが2次元配列

$dの1次元配列に入れ込む

while(!empty($t)){
    foreach ($t as $key=>&$t_){
        $d[] = array_shift($t_);
    }
}

結果無限ループ!
空にならない・・・

各要素を明示的に空にする

while(!empty($t)){
    foreach ($t as $key=>&$t_){
        $d[] = array_shift($t_);
        if(empty($t_)) unset($t[$key]); //追加
    }
}

出来た

要点

配列自体も実体として捉えられるのでemptyにはならない

つぶやき

時々簡単なことに詰まって時間を費やしてしまう。
ちょっと散歩したりしたほうがいい