Dreamweaver TechniqueJAVA Script サンプル | CSS sample | JAVA Applet sample | Flash Sample
HTML4.0 reference | DynamicHTMLXHTML | XML sample | XSLT sample | RIKO's ASP Trial
ASP ADO リファレンス | PHP関数リファレンス | MySQL関数リファレンス

配列の要素数を調べる

■ 配列の内部ポインタを操作する

PHPでは、配列の中で現在処理をしている要素を内部ポインタというもので、指し示しています。
次に示す関数を使うと、その内部ポインタが指し示す先を変更することができますので、その結果として、添字やキーを使わずに配列を順に処理することができます。

最初の要素 = reset ( 配列)

次の要素 = next( 配列)

前の要素 =prev ( 配列)

最後の要素 =end ( 配列)

rest関数は、配列の内部ポインタを配列の先頭の要素に移動し、その内容を返します。
end関数はその反対で、内部ポインタを配列の末尾の要素に移動し、その内容を返します。
reset関数やend関数で配列の要素を取得しても、array_shift関数やarray_pop関数のようにその要素の値が削除されるということはありません。
next関数は、一つ後ろの要素に内部ポインタを移動し、その内容を返します。内部ポインタが配列の末尾を越えてしまった場合(それ以上次の応訴がない場合)には、FALSEを返します。
prev関数は、next関数とは逆で、一つ前の要素に内部ポインタを移動し、その内容を返します。内部ポインタが配列の先頭を超えた場合(前の要素がもうない場合)にはFALSEを返します。
ただし、next関数とprev関数は、内部ポインタが指し示す要素が空(数値のゼロ「0」または空白文字列「""」)の場合にもFALSEを返しますので、次の要素や前の要素がもうないのか、たまたまその要素の値が空だったのか、ということを判別することができません。
従って、空の要素が存在する可能性がある配列を順に処理したい場合には「キーと値のペアを取得する」の方法を使った方が良いでしょう。

 

<?php
   $sample = array("a", "b", "c", "d", "e");

   // header("Content-Type: text/plain; charset=EUC-JP");
   echo '最後の要素:' . end($sample) . "\n";
   echo 'その前の要素:' . prev($sample) . "\n";
   echo '最初の要素:' . reset($sample) . "\n";
   echo 'その次の要素:' . next($sample) . "\n";
?>

<戻る

R HOUSE | RIKO's Trial Page | Shirley's Pettit Case | Shirley's i-box | Shirley's little box

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル