(44) 配列の内部ポインタを制御する。

投稿者: | 2017年10月27日

この記事は最終更新から 753日 が経過しています。

(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);      // 内部ポインタを先頭に戻しておく(もし必要ならば)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)