【PHP】配列のポインタを操作する関数「current()」「next()」「prev()」「reset()」「end()」

Pocket

今回は配列のポインタ操作に関するいくつかの関数、「current()」、「next()」、「each()」、「prev()」、「reset()」、「end()」を使えるようになります。トランプゲームのババ抜きのようにプレイヤーのターンプログラムを作るときなどに役に立つ操作なので是非とも覚えておきたいですねφ(・_・”)メモメモ

そもそもポインタってなに?

配列を作った時、その配列には自動的にポインタという“カーソル”のような役割を持つものがセットされます。特別な操作を行わない場合、配列の最初の要素にセットされます。このポインタを操作し、ポインタにセットされている要素を取り出したりすることができるのです。

PHPポインタ0

 

ポインタがセットされている要素を返す関数「current()」

「current()」は操作配列のポイントがセットされている要素を返す関数です。ポインタの初期設定は最初の要素にセットされています。例の場合「1」にポイントがセットされている為、この要素が「$test」に格納されることになります。

 

ポインタを一つ進める関数「next()」

「next()」は現在のポイントの位置からポインタを一つ進める関数です。変数に代入すると「ポインタを一つ進めた要素を返す」という操作になります。これ以上ポインタを進めない状態(配列の末尾)で操作すると「false」が返ってきます。

 

ポインタを一つ戻す関数「prev()」

「prev()」は現在のポイントの位置からポインタを一つ戻す関数です。変数に代入すると「ポインタを一つ戻し要素を返す」という操作になります。これ以上ポインタを戻せない状態(配列の先頭)で操作すると「false」が返ってきます。

 

ポインタを先頭に戻す関数「reset()」

「reset()」は内部ポインタが配列のどこにセットされていても、配列の先頭にセットし直す関数です。

 

ポインタを末尾にセットする関数「end()」

「end()」は内部ポインタが配列のどこにセットされていても、配列の末尾にセットし直す関数です。

エッグ

シェアする

コメントを残す

メールアドレスが公開されることはありません。

コメントする