1,287 views
この記事は最終更新から 2563日 が経過しています。
(1) やりたいこと
配列の先頭要素だけ、末端要素だけを取得したい場合が多々ある。
方法はいろいろあるが、今回は明示的に内部ポインタを制御してこれを実現してみる。
(2) 内部ポインタの使い方
以下のような配列を操作してみる。
$ary = array('a','b','c');
配列を宣言した直後、内部ポインタは先頭を指している。
current 関数は内部ポインタで指されている要素を返す。
echo current($ary); echo current($ary);
aa
end 関数を使うと内部ポインタは最後の要素を指す。
echo end($ary); echo current($ary);
cc
prev 関数を使うと内部ポインタは一つ前の要素を指す。
echo prev($ary); echo current($ary);
bb
next 関数を使うと内部ポインタは一つ後ろの要素を指す。
echo next($ary); echo current($ary);
cc
reset 関数を使うと内部ポインタは先頭を指す。
echo reset($ary); echo current($ary);
aa
(3) やりたいことの実現方法
1) 配列の先頭要素を取得する。
$elem = reset($ary);
3) 配列の末端要素を取得する。
$elem = end($ary); reset($ary); // 内部ポインタを先頭に戻しておく(もし必要ならば)