一挙両得なarray_splice関数

array_splice関数がちょっとおもしろい動作をするのでメモっておく
array_splice関数は元の配列のN番目の要素からM個取り出す関数だが、元の変数も変化する。
具体的には取り出した要素が取り除かれた変数になってしまう。

使いどころは難しいかも知れないけど、これを使うと結構楽ができそう・・・

■コード

$a = array(
    'aaa' => '111',
    'bbb' => '222',
    'ccc' => '333',
    'ddd' => '444',
    'eee' => '555'
);
 
$b = array_splice($a, 2, 2);

var_dump($a);
var_dump($b);

■結果

array(3) {
  ["aaa"]=>
  string(3) "111"
  ["bbb"]=>
  string(3) "222"
  ["eee"]=>
  string(3) "555"
}
array(2) {
  ["ccc"]=>
  string(3) "333"
  ["ddd"]=>
  string(3) "444"
}