配列に対して先頭(インデックス = 0)に対して値を取り出したり追加する時、PHPではarray_shiftとarray_unshiftを使用する。
<?php $a = [1, 2, 3, 4, 5]; $b = array_shift($a); print_r($a); // Array([0] => 2 [1] => 3) print_r($b); // 1 array_unshift($a, 4); print_r($a); // Array([0] => 2 [1] => 3 [1] => 3)
array_shiftを実行すると、先頭の要素を取り出しそれが戻り値となる。
そこで、配列$aの先頭にあった「1」が取り出され$bに代入されている。
また、$aから1がなくなっていることもわかる。
次に、array_unshiftを使用して$aの先頭に4を追加し、以降の要素のインデックスが一つずつズレている。
非常にわかりやすく使い易いが、重要なのは配列の先頭に対して操作しているということ。
これを忘れてしまうことが多く、そのたびに混乱する。
いまどきのアルゴリズムを使いこなす PHPプログラミング開発テクニック
posted with amazlet at 17.03.12