reset

関数の概要

PHPの reset 関数は、配列の内部ポインタを先頭の要素に戻すための関数です。配列の要素を順番に処理するとき、内部ポインタは進んでいきますが、再び先頭から処理を始めたいときにこの関数を使います。

パラメータの説明

  • array(必須): 内部ポインタをリセットしたい配列を指定します。この配列は変数であり、配列でなければなりません。

戻り値

reset 関数は、配列の先頭要素の値を返します。配列が空の場合は false を返します。

使用例

基本的な使い方

<?php
$array = ['りんご', 'みかん', 'バナナ'];
echo current($array); // りんご

// 内部ポインタを進める
next($array);
echo current($array); // みかん

// resetで先頭に戻す
reset($array);
echo current($array); // りんご
?>

この例では、まず current で現在の要素を取得し、 next でポインタを進めます。reset で先頭に戻して再び先頭要素を取得しています。

連想配列での利用例

<?php
$user = [
  'name' => '山田太郎',
  'age' => 30,
  'email' => 'taro@example.com'
];

// ポインタをすすめる
next($user);
echo key($user) . ': ' . current($user) . "n"; // age: 30

// resetで先頭に戻る
reset($user);
echo key($user) . ': ' . current($user) . "n"; // name: 山田太郎
?>

連想配列でも内部ポインタを操作でき、resetで先頭の要素に戻せます。

空配列の場合

<?php
$empty = [];
$result = reset($empty);
var_dump($result); // bool(false)
?>

空の配列に対して reset を使うと false が返ります。これは要素が存在しないためです。

関連する関数

  • current: 現在の内部ポインタの要素の値を取得
  • next: 内部ポインタを次の要素に進める
  • prev: 内部ポインタを前の要素に戻す
  • end: 内部ポインタを配列の最後の要素に移動する
  • key: 現在の内部ポインタの要素のキーを取得

まとめ

reset 関数は、配列の内部ポインタを先頭に戻す非常に便利な関数です。配列を順に処理する際に途中でまた最初から処理したい場合や、何度も配列の先頭要素を取得したい場合などに役立ちます。使い方もシンプルで、戻り値で先頭要素の値が取得できるため、そのまま値を読み取ることも可能です。配列操作を行う際はぜひ活用してください。