PHPの配列関連のチートシート

KIMG0615

PHPの配列は独特で、全部連想配列のように見えます。ECMAScript育ちな私は忘れてしまいがちなので、全部まとめておくことにしました。(参考:PHP: 配列 関数 – Manual

  • 文字列から配列を作る関数も入れています。
  • PHP5であれば使えるものはをつけています。
  • PHP5.x以降に使えるものにはをつけています。
  • PHP7から使える関数は記載しません。
  • 非推奨やエイリアスの関数は記載しません。
  • 特に使いそうな関数には 🙂 をつけています。
スポンサーリンク

目次

array_change_key_case

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

配列のすべてのキーの大文字小文字を変更する。

説明

array のすべてのキーを小文字あるいは大文字にした配列を返します。 数値添字はそのままとなります(数字の振り直しはしません)。

パラメータ

array

処理を行う配列。

case

CASE_UPPER あるいは CASE_LOWER (デフォルト)。

返り値

すべてのキーを小文字あるいは大文字にした配列を返します。 array が配列でない場合は FALSE を返します。

 🙂 array_chunk

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

配列を分割する。

説明

配列を、要素数が size の配列に分割します。 最後の部分の要素数は size より小さくなることもあります。

パラメータ

array

処理を行う配列。

size

各部分のサイズ。

preserve_keys

TRUE の場合はキーをそのまま保持します。 デフォルトは FALSE で、各部分のキーをあらためて数字で振りなおします。

返り値

数値添字の多次元配列を返します。添え字はゼロから始まり、 各次元の要素数が size となります。

array_column

(PHP 5 >= 5.5.0, PHP 7)

対象となる配列から単一のカラムの値を返す。

説明

配列 input の中から column_key で指定した単一のカラムの値を返します。 オプションで index_key も指定できます。これを指定すると、 入力配列内のカラム index_key の値に基づいて結果を並べ替えます。

パラメータ

input

値を取り出したい多次元配列 (あるいはオブジェクトの配列)。 オブジェクトの配列を指定した場合は、public プロパティはそのまま取得できます。 protected や private なプロパティを取得したい場合は、そのクラスがマジックメソッド __get() および __isset() を実装している必要があります。

column_key

値を返したいカラム。 取得したいカラムの番号を整数値で指定することもできるし、 連想配列のキーやプロパティの名前を指定することもできます。 NULL を指定すると、配列やオブジェクト全体を返します (index_key との組み合わせで、配列の並べ替えをするときに便利です)。

index_key

返す配列のインデックスとして使うカラム。 カラム番号を表す整数値、あるいはキーの名前を表す文字列になります。

返り値

入力配列の単一のカラムを表す値の配列を返します。

array_combine

(PHP 5, PHP 7)

一方の配列をキーとして、もう一方の配列を値として、ひとつの配列を生成する。

説明

keys 配列の値をキーとして、また values 配列の値を対応する値として生成した 配列 を作成します。

パラメータ

keys

キーとして使用する配列。無効な値を渡すと文字列に変換されます。

values

値として使用する配列。

返り値

作成した配列を返します。 互いの配列の要素の数が合致しない場合に FALSE を返します。

 🙂 array_count_values

(PHP 4, PHP 5, PHP 7)

配列の値の数を数える。

説明

配列 array の値をキーとし、 array におけるその値の出現回数を値とした配列を返します。

パラメータ

array

値を数える配列。

返り値

array のキーとその登場回数を組み合わせた連想配列を返します。

array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

追加された添字の確認を含めて配列の差を計算する。

説明

array1 を array2 と比較し、 その差を返します。array_diff() とは異なり、 配列のキーも用いて比較を行います。

パラメータ

array1

比較元の配列。

array2

比較する対象となる配列。

さらに比較する対象となる配列。

返り値

array1 の要素のうち、 その他の配列のいずれにも含まれないものだけを残した配列を返します。

 🙂 array_diff_key

(PHP 5 >= 5.1.0, PHP 7)

キーを基準にして配列の差を計算する。

説明

array1 のキーを array2 のキーと比較し、その差を返します。 この関数は array_diff() に似ていますが、 値ではなくキーを用いて比較するという点が異なります。

パラメータ

array1

比較元の配列。

array2

比較する対象となる配列。

さらに比較する対象となる配列。

返り値

array1 の要素のうち、 その他の配列のいずれにも含まれないキーのものだけを残した配列を返します。

array_diff_uassoc

(PHP 5, PHP 7)

ユーザーが指定したコールバック関数を利用し、 追加された添字の確認を含めて配列の差を計算する。

説明

array1 のキーを array2 のキーと比較し、その差を返します。 この関数は array_diff() に似ていますが、 配列のキーを用いて比較するという点が異なります。

array_diff_assoc() とは異なり、 内部関数ではなくユーザーが指定したコールバック関数を用いて添字を比較します。

パラメータ

array1

比較元の配列。

array2

比較する対象となる配列。

さらに比較する対象となる配列。

key_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

array1 の要素のうち、 その他の配列のいずれにも含まれないものだけを残した配列を返します。

array_diff_ukey

(PHP 5 >= 5.1.0, PHP 7)

キーを基準にし、コールバック関数を用いて配列の差を計算する。

説明

array1 のキーを array2 のキーと比較し、その差を返します。 この関数は array_diff() に似ていますが、 値ではなくキーを用いて比較するという点が異なります。

array_diff_key() とは異なり、 内部関数ではなくユーザーが指定したコールバック関数を用いて添字を比較します。

パラメータ

array1

比較元の配列。

array2

比較する対象となる配列。

さらに比較する対象となる配列。

key_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

array1 の要素のうち、 その他の配列のいずれにも含まれないものだけを残した配列を返します。

 🙂 array_diff

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

配列の差を計算する。

説明

array1 を他の配列と比較し、 array1 の要素の中で他の配列には存在しないものだけを返します。

パラメータ

array1

比較元の配列。

array2

比較対象の配列。

さらに比較したい配列。

返り値

array1 のエントリのうち、他のどの配列にも含まれない要素のみを含む配列を返します。

array_fill_keys

(PHP 5 >= 5.2.0, PHP 7)

キーを指定して、配列を値で埋める。

説明

パラメータ value で指定した値で配列を埋めます。 キーとして、配列 keys で指定した値を使用します。

パラメータ

keys

キーとして使用する値の配列。キーとして無効な値は string に変換されます。

value

埋めたい値。

返り値

値を埋めた配列を返します。

 🙂 array_fill

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

配列を指定した値で埋める。

説明

パラメータ value を値とする num 個のエントリからなる配列を埋めます。 この際、キーは、start_index パラメータから開始します。

パラメータ

start_index

返される配列の最初のインデックス。

start_index が負の場合は、 返される配列の最初のインデックスが start_index となり、それ以降のインデックスはゼロから始まります 。

num

挿入する要素数。 ゼロ以上の数でなければなりません。

value

要素に使用する値。

返り値

値を埋めた配列を返します。

変更履歴

5.6.0

num にゼロを指定できるようになりました。これより前のバージョンでは、 num には正の数しか指定できませんでした。

 🙂 array_filter

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

コールバック関数を使用して、配列の要素をフィルタリングする。

説明

callback 関数によりフィルタ処理が行われた array の全ての要素を含む配列を返します。 callback 関数が true を返した場合、 array の現在の値が結果の配列に入ります。 配列のキーは保存されます。

パラメータ

array

処理する配列。

callback

使用するコールバック関数。

コールバック関数が与えられなかった場合、 array のエントリの中で FALSE と等しいもの (boolean への変換 を参照ください) がすべて削除されます。

flag

引数として、何を callback に送るのかを決めるフラグ。

  • ARRAY_FILTER_USE_KEY – 値ではなく、キーだけを callback の引数として渡す
  • ARRAY_FILTER_USE_BOTH – 値だけではなく、値とキーの両方を callback の引数として渡す

返り値

フィルタリングされた結果の配列を返します。

変更履歴

5.6.0

オプションのパラメータ flag と、定数 ARRAY_FILTER_USE_KEY および ARRAY_FILTER_USE_BOTH が追加されました。

 🙂 array_flip

(PHP 4, PHP 5, PHP 7)

配列のキーと値を反転する。

説明

array_flip() は、配列を反転して返します。 すなわち、array のキーが値となり、 array の値がキーとなります。

array の値は有効なキーを必要とすることに注意してください。 すなわち、キーは、integer または string である必要があります。ある値が間違った型である場合、 警告が出力され、問題のこのキー/値の組は結果には含まれません。

ある値が複数回出現した場合、最後のキーがその値として使用され、 その他の値は失われます。

パラメータ

array

反転を行うキー/値の組。

返り値

成功した場合に反転した配列、失敗した場合に NULL を返します。

array_intersect_assoc

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

追加された添字の確認も含めて配列の共通項を確認する。

説明

array_intersect_assoc() は、全ての引数に現れる array1 の全ての値を含む配列を返します。 array_intersect() と異なり、 キーも比較に使用されることに注意してください。

パラメータ

array1

値を調べるもととなる配列。

array2

値を比較する対象となる配列。

さらにそれ以外の配列。

返り値

array1 の値のうち、すべての引数に存在するものを含む連想配列を返します。

 🙂 array_intersect_key

(PHP 5 >= 5.1.0, PHP 7)

キーを基準にして配列の共通項を計算する。

説明

array1 のエントリのうち、 その他のすべての引数の中に共通して存在するキーと一致するキーの値からなる配列を返します。

パラメータ

array1

値を調べるもととなる配列。

array2

値を比較する対象となる配列。

さらにそれ以外の配列。

返り値

array1 のエントリのうち、 すべての引数に存在するキーのものを含む連想配列を返します。

array_intersect_uassoc

(PHP 5, PHP 7)

追加された添字の確認も含め、コールバック関数を用いて 配列の共通項を確認する。

説明

array_intersect_uassoc() は、全ての引数に現れる array1 の全ての値を含む配列を返します。 array_intersect() と異なり、 キーが比較に使用されることに注意してください。

パラメータ

array1

比較元となる最初の配列。

array2

キーを比較する対象となる最初の配列。

キーを比較する対象となる配列の、可変リスト。

key_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

array1 の値のうち、 すべての引数に存在するもののみを返します。

array_intersect_ukey

(PHP 5 >= 5.1.0, PHP 7)

キーを基準にし、コールバック関数を用いて 配列の共通項を計算する。

説明

他の全ての引数に存在する array1 の値を全て有する配列を返します。

パラメータ

array1

比較元となる最初の配列。

array2

キーを比較する対象となる最初の配列。

キーを比較する対象となる配列の、可変リスト。

key_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

array1 の値のうち、 すべての引数に存在するキーのものを含む連想配列を返します。

 🙂 array_intersect

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

配列の共通項を計算する。

説明

他の全ての引数に存在する array1 の値を全て有する配列を返します。 キーと値の関係は維持されることに注意してください。

パラメータ

array1

値を調べるもととなる配列。

array2

値を比較する対象となる配列。

さらにそれ以外の配列。

返り値

array1 の値のうち、 すべての引数に存在する値のものを含む連想配列を返します。

array_key_exists

(PHP 4 >= 4.0.7, PHP 5, PHP 7)

指定したキーまたは添字が配列にあるかどうかを調べる。

説明

指定した key が配列に設定されている場合、 array_key_exists() は TRUE を返します。 key は配列添字として使用できる全ての値を使用可能です。

パラメータ

key

調べる値。

array

キーが存在するかどうかを調べたい配列。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 array_keys

(PHP 4, PHP 5, PHP 7)

配列のキーすべて、あるいはその一部を返す。

説明

array_keys() は、配列 array から全てのキー (数値および文字列) を返します。

オプション search_value が指定された場合、 指定した値に関するキーのみが返されます。指定されない場合は、 array から全てのキーが返されます。

パラメータ

array

返すキーを含む配列。

search_value

指定した場合は、これらの値を含むキーのみを返します。

strict

検索時に厳密な比較 (===) を行うかどうか。

返り値

array のすべてのキーを配列で返します。

 🙂 array_map

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

指定した配列の要素にコールバック関数を適用する。

説明

array1 の各要素に callback 関数を適用した後、 その全ての要素を含む配列を返します。 callback 関数が受け付けるパラメータの数は、 array_map() に渡される配列の数に一致している必要があります。

パラメータ

callback

配列の各要素に適用するコールバック関数。

array1

コールバック関数を適用する配列。

コールバック関数に渡す引数を指定する配列の可変リスト。

返り値

array1 の各要素に callback 関数を適用した後、 その全ての要素を含む配列を返します。

array_merge_recursive

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

二つ以上の配列を再帰的にマージする。

説明

一つ以上の配列の要素をマージし、 前の配列の最後にもう一つの配列の値を追加します。 マージした後の配列を返します。

入力配列が同じ文字列のキーを有している場合、 マージした後の配列ではこれらのキーの値がひとつにまとめられます。 この処理は再帰的に行われます。 このため、値の一つが配列自体を指している場合、 この関数は別の配列の対応するエントリもマージします。 しかし、配列が同じ数値キーを有している場合、 後の値は元の値を上書せず、追加されます。

パラメータ

array1

マージするもとの配列。

再帰的にマージしていく配列の可変リスト。

返り値

すべての引数の配列をマージした結果の配列を返します。

 🙂 array_merge

(PHP 4, PHP 5, PHP 7)

ひとつまたは複数の配列をマージする。

説明

前の配列の後ろに配列を追加することにより、 ひとつまたは複数の配列の要素をマージし、得られた配列を返します。

入力配列が同じキー文字列を有していた場合、そのキーに関する後に指定された値が、 前の値を上書きします。しかし、配列が同じ添字番号を有していても 値は追記されるため、このようなことは起きません。

入力配列の中にある数値添字要素の添字の数値は、 結果の配列ではゼロから始まる連続した数値に置き換えられます。

パラメータ

array1

最初の配列。

マージしていく任意の数の配列のリスト。

返り値

結果の配列を返します。

array_multisort

(PHP 4, PHP 5, PHP 7)

複数または多次元の配列をソートする。

説明

複数の配列を一度に、 または、多次元の配列をその次元の一つでソートする際に使用可能です。

連想配列のキー (string) は不変ですが、 数値添字は再度振り直されます。

パラメータ

array1

ソートしたい配列。

array1_sort_order

先ほどの引数 array のソート順。 SORT_ASC はアイテムを昇順にソートし、 SORT_DESC はアイテムを降順にソートします。

この引数は、array1_sort_flags と入れ替えることもできるし、完全に省略することもできます。 省略した場合は SORT_ASC とみなします。

array1_sort_flags

先ほどの引数 array のソート方法。

これらのフラグが使えます。

  • SORT_REGULAR – アイテムを通常通り比較します (型を変更しません)。
  • SORT_NUMERIC – アイテムを数値として比較します。
  • SORT_STRING – アイテムを文字列として比較します。
  • SORT_LOCALE_STRING – 現在のロケールを考慮して、アイテムを文字列として比較します。利用するロケールは setlocale() で変更できます。
  • SORT_NATURAL – natsort() と同様の「自然順」で、アイテムを文字列として比較します。
  • SORT_FLAG_CASE – SORT_STRING や SORT_NATURAL と (ビット OR で) 組み合わせて、 大文字小文字を区別しない文字列のソートを指定します。

この引数は、array1_sort_order と入れ替えることもできるし、完全に省略することもできます。 省略した場合は SORT_REGULAR とみなします。

追加の配列。オプションで並び順やフラグが続きます。 前の配列の比較結果が等しい要素に対応する要素群だけを比較します。 要するに、辞書的 (lexicographical) なソートを行うということです。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

変更履歴

5.4.0

arg で指定できるソートフラグに SORT_NATURAL と SORT_FLAG_CASE が追加されました。

5.3.0

arg で指定できるソートフラグに SORT_LOCALE_STRING が追加されました。

 🙂 array_pad

(PHP 4, PHP 5, PHP 7)

指定長、指定した値で配列を埋める。

説明

size で指定した長さになるように値 value で埋めて array のコピーを返します。 size が正の場合、配列の右側が埋められます。 負の場合、配列の左側が埋められます。 size の絶対値が array の長さ以下の場合、埋める処理は行われません。 一度に追加できる要素の最大数は 1048576 です。

パラメータ

array

値を埋めるもととなる配列。

size

新しい配列のサイズ。

value

array が size より小さいときに、 埋めるために使用する値。

返り値

size で指定した長さになるように値 value で埋めて array のコピーを返します。 size が正の場合、配列の右側が埋められます。 負の場合、配列の左側が埋められます。 size の絶対値が array の長さ以下の場合、埋める処理は行われません。

 🙂 array_pop

(PHP 4, PHP 5, PHP 7)

配列の末尾から要素を取り除く。

説明

配列 array の最後の値を取り出して返します。 配列 array は、要素一つ分短くなります。

パラメータ

array

値を取り出す配列。

返り値

配列 array の最後の値を取り出して返します。 array が空 (または、配列でない) の場合、 NULL が返されます。

array_product

(PHP 5 >= 5.1.0, PHP 7)

配列の値の積を計算する。

説明

配列の値の積を計算します。

パラメータ

array

計算をする配列。

返り値

integer あるいは float で積を返します。

変更履歴

5.3.6

空の配列の積が 1 を返すようになりました。これまでのバージョンでは、空の配列に対しては 0 を返していました。

 🙂 array_push

(PHP 4, PHP 5, PHP 7)

一つ以上の要素を配列の最後に追加する。

説明

array をスタックとして処理し、渡された変数を array の最後に加えます。配列 array の長さは渡された変数の数だけ増加します。 各 value1 毎に以下を繰り返すことと同じ効果があります。

各 value1 で繰り返されます。

パラメータ

array

入力の配列。

array の最後に追加する値。

返り値

処理後の配列の中の要素の数を返します。

変更履歴

7.3.0

この関数は、1 つのパラメータでのみ呼び出すことができるようになりました。 前は、少なくとも 2 つのパラメータが必要でした。

 🙂 array_rand

(PHP 4, PHP 5, PHP 7)

配列から一つ以上の要素をランダムに取得する。

説明

一つ以上のランダムなエントリを配列から取り出し、 取り出したエントリのキーを返します。 この関数が使う疑似乱数生成器は、暗号学的な使い方には適していません。

パラメータ

array

入力の配列。

num

取得するエントリの数を指定します。

返り値

エントリを一つだけ取得する場合、 array_rand() はランダムなエントリのキーを返します。 その他の場合は、ランダムなエントリのキーの配列を返します。 これにより、ランダムな値だけではなくランダムなキーも配列から取得できるようになります。

変更履歴

7.1.0

The internal randomization algorithm has been changed to use the » Mersenne Twister Random Number Generator instead of the libc rand function.

5.2.10

結果の配列のキーがシャッフルされなくなりました。

 🙂 array_reduce

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

コールバック関数を用いて配列を普通の値に変更することにより、配列を再帰的に減らす。

説明

配列 array の各要素に callback 関数を繰り返し適用し、 配列を一つの値に減らします。

パラメータ

array

入力の配列。

callback

carry

前回の反復処理の結果を保持します。最初の反復処理のときには、 initial の値を保持しています。

item

現在の反復処理の値を保持します。

initial

オプションの intial が利用可能な場合、処理の最初で使用されたり、 配列が空の場合の最終結果として使用されます。

返り値

結果の値を返します。配列が空で initial が渡されなかった場合は、 array_reduce() は NULL を返します。

変更履歴

5.3.0

initial に mixed を指定できるようになりました。 これまでは integer のみでした。

array_replace_recursive

(PHP 5 >= 5.3.0, PHP 7)

渡された配列の要素を再帰的に置き換える。

説明

最初の配列の値をそれ以降の配列の同じ要素の値で置き換えます。 最初の配列のキーと同じキーが 2 番目の配列にあれば、 2 番目の配列の値が最初の配列の値を上書きします。 2 番目の配列に存在するキーが最初の配列に存在しなければ、 そのキーが新たに最初の配列内に作られます。 最初の配列にしか存在しないキーについては何も変わりません。 置き換え用の配列が複数渡された場合は渡した順に処理を行い、 後から渡した配列の値のほうが優先されます。

また、配列を再帰的にたどり、内部の値に対しても同じ手順で処理します。

array1 の値がスカラーの場合は、 array2 の値がスカラーであるか配列であるかにかかわらずそれで置き換えられます。 array1 の値と array2 の値が両方配列である場合は、array_replace_recursive() が対応する値を再帰的に処理します。

パラメータ

array1

要素を置き換えたい配列。

array2

置き換えたい要素を含む配列。

オプション。置き換えたい要素を含む、さらに別の配列。

返り値

配列を返します。エラーが発生した場合は NULL を返します。

 🙂 array_replace

(PHP 5 >= 5.3.0, PHP 7)

渡された配列の要素を置き換える。

説明

最初の配列の値をそれ以降の配列の同じ要素の値で置き換えます。 最初の配列のキーと同じキーが 2 番目の配列にあれば、 2 番目の配列の値が最初の配列の値を上書きします。 2 番目の配列に存在するキーが最初の配列に存在しなければ、 そのキーが新たに最初の配列内に作られます。 最初の配列にしか存在しないキーについては何も変わりません。 置き換え用の配列が複数渡された場合は渡した順に処理を行い、 後から渡した配列の値のほうが優先されます。

2 番目の配列の値がどんな型であっても、最初の配列の値を置き換えます。

パラメータ

array1

要素を置き換えたい配列。

array2

置き換えたい要素を含む配列。

置き換えたい要素を含む、さらに別の配列。 後から渡した配列の値のほうが優先されます。

返り値

配列を返します。エラーが発生した場合は NULL を返します。

 🙂 array_reverse

(PHP 4, PHP 5, PHP 7)

要素を逆順にした配列を返す。

説明

配列を受け取って、要素の順番を逆にした新しい配列を返します。

パラメータ

array

入力の配列。

preserve_keys

TRUE の場合は数値のキーを保持します。 非数値のキーは、この設定にかかわらず常に保持されます。

返り値

逆転させた配列を返します。

 🙂 array_search

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

指定した値を配列で検索し、見つかった場合に対応する最初のキーを返す。

説明

haystack において needle を検索します。

パラメータ

needle

検索したい値。

haystack

検索対象の配列。

strict

オプションの3番目のパラメータ strict に TRUE が指定された場合、  identical 要素を haystack から探します。 つまり、haystack の中で needle の厳密な型比較を実行します。 およびオブジェクトが同一のインスタンスであるかどうかも確認します。

返り値

needle が見つかった場合に配列のキー、 それ以外の場合に FALSE を返します。

もし haystack に 1 つ以上の needle に見つかった場合、 最初にマッチしたキーが返されます。全てのマッチした値に対するキーを返すためには、代わりに array_keys() にパラメータ search_value を付けて使用してください。

変更履歴

5.3.0

他のすべての内部関数と同様、無効なパラメータが渡されたときに array_search() は NULL を返すようになりました。

 🙂 array_shift

(PHP 4, PHP 5, PHP 7)

配列の先頭から要素を一つ取り出す。

説明

array の最初の値を取り出して返します。配列 array は、要素一つ分だけ短くなり、全ての要素は前にずれます。 数値添字の配列のキーはゼロから順に新たに振りなおされますが、 リテラルのキーはそのままになります。

パラメータ

array

入力の配列。

返り値

取り出した値を返します。array が空の場合や配列でない場合は NULL を返します。

 🙂 array_slice

(PHP 4, PHP 5, PHP 7)

配列の一部を展開する。

説明

array から引数 offset および length で指定された連続する要素を返します。

パラメータ

array

入力の配列。

offset

offset が負の値ではない場合、要素位置の計算は、 配列 array の offset から始められます。 offset が負の場合、要素位置の計算は array の最後から行われます。

length

lengthが指定され、正の場合、 配列の要素の中から最大でその数までの要素を返します。 配列の要素数が length より少ない場合は、 配列から取得できる要素だけを返します。length が指定され、負の場合、配列の末尾から連続する複数の要素が返されます。 省略された場合、offset から配列の最後までの全ての要素が返されます。

preserve_keys

array_slice() はデフォルトで配列の数値キーを並べなおし、 リセットすることに注意してください。 preserve_keys を TRUE にする事でこの動作を変更することができます。

返り値

切り取った部分を返します。オフセットが配列のサイズより大きい場合は、空の配列を返します。

変更履歴

5.2.4

length のデフォルト値が NULL に変わりました。 NULL を指定すると、array の長さを使うようになります。 これより前のバージョンでは、NULL を指定した場合は長さゼロと見なされていました (つまり、何も返しませんでした)。

5.0.2

オプションのパラメータ preserve_keys が追加されました。

array_splice

(PHP 4, PHP 5, PHP 7)

配列の一部を削除し、他の要素で置換する。

説明

配列 input から offset および length で指定された要素を削除し、配列 replacement でそれを置換します。

input の配列の数値添字は保存されないことに注意しましょう。

パラメータ

input

入力の配列。

offset

offset が正の場合、削除される部分は 配列 input の最初から指定オフセットの ぶんだけ進んだ位置からとなります。 offset が負の場合、削除される部分は、 input の末尾から数えた位置からとなります。

length

length が省略された場合、 offset から配列の最後までが全て削除されます。 length が指定され、正の場合、複数の要素が削除されます。 負の length が指定された場合、削除される部分の末尾の位置は配列の末尾を基準にして計算されます。 length にゼロを指定した場合は、どの要素も削除しません。 ヒント: replacement も指定した場合に offset から配列の最後まで全てを削除するには、 length を求めるために count($input) を使用してください。

replacement

配列 replacement が指定された場合、 削除された要素は、この配列の要素で置換されます。

offset および length で何も削除しないと指定した場合、配列 replacement の要素は offset で指定された位置に挿入されます。 置換される配列のキーは保存されないことに注意してください。

もし replacement に一つしか要素がない場合、 要素そのものが配列やオブジェクトあるいは NULL でない限り、array() で括る必要はありません。

返り値

抽出された要素を含む配列を返します。

 🙂 array_sum

(PHP 4 >= 4.0.4, PHP 5, PHP 7)

配列の中の値の合計を計算する。

説明

配列の中の値の合計を整数または float として返します。

パラメータ

array

入力の配列。

返り値

値の合計を整数または float として返します。 array が空の場合は 0 を返します。

array_udiff_assoc

(PHP 5, PHP 7)

データの比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算する。

説明

データの比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算します。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

array1 から他の引数の配列の中に現れない全ての値を含む array を返します。 array_diff() や array_udiff() と異なり、キーが比較に使用されることに注意してください。 配列のデータの比較は、ユーザーが指定したコールバックを用いて行われます。 この点で、array_diff_assoc() は反対の動作、つまり 内部関数を利用した比較を行います。

array_udiff_uassoc

(PHP 5, PHP 7)

データと添字の比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算する。

説明

データと添字の比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算します。

array_diff() や array_udiff() と異なり、キーが比較に使用されることに注意してください。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

key_compare_func

キー(添字)の比較は、コールバック関数 key_compare_func で行われます。 array_udiff_assoc() では後者の比較が内部関数で 行われるという点で、この関数とは異なります。

返り値

array1 から他の引数の配列の中に現れない全ての 値を含むarray を返します。

array_udiff

(PHP 5, PHP 7)

データの比較にコールバック関数を用い、配列の差を計算する。

説明

データの比較にコールバック関数を用い、配列の差を計算します。 この関数は array_diff() と異なり、 データの比較に内部関数を利用します。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較用のコールバック関数。

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

他の引数のいずれにも存在しない array1 の値の全てを有する配列を返します。

array_uintersect_assoc

(PHP 5, PHP 7)

データの比較にコールバック関数を用い、 追加された添字の確認も含めて配列の共通項を計算する。

説明

データの比較にコールバック関数を用い、 追加された添字の確認も含めて配列の共通項を計算します。

array_uintersect()と異なり、キーが比較に使用される ことに注意してください。データはコールバック関数を用いて比較されます。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

全ての引数に現れる array1 の全ての値を含む配列を返します。

array_uintersect_uassoc

(PHP 5, PHP 7)

データと添字の比較に個別のコールバック関数を用い、 追加された添字の確認も含めて配列の通項を計算する。

説明

データと添字の比較にそれぞれ別のコールバック関数を用い、 追加された添字の確認も含めて配列の共通項を計算します。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

key_compare_func

キーの比較用のコールバック関数。

返り値

全ての引数に現れる array1 の全ての値を含む配列を返します。

array_uintersect

(PHP 5, PHP 7)

データの比較にコールバック関数を用い、配列の共通項を計算する。

説明

データの比較にコールバック関数を用い、配列の共通項を計算します。

パラメータ

array1

最初の配列。

array2

2 番目の配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

他の全ての引数に存在する array1 の値を全て有する配列を返します。

 🙂 array_unique

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

配列から重複した値を削除する。

説明

array を入力とし、値に重複のない新規配列を返します。

キーは保持されることに注意してください。sort_flags を使った比較で複数の要素が等しい場合、最初に等しいとされた要素のキーと値が保持されます。

パラメータ

array

入力の配列。

sort_flags

オプションの 2 番目のパラメータ sort_flags にこれらの値を使用して、ソートの挙動を変更します。

ソート形式のフラグは次のとおりです。

  • SORT_REGULAR – 通常の比較 (型変換をしない) を行います
  • SORT_NUMERIC – 数値として比較します
  • SORT_STRING – 文字列として比較します
  • SORT_LOCALE_STRING – 現在のロケールにもとづいて文字列として比較します。

返り値

処理済の配列を返します。

変更履歴

5.2.10

sort_flags のデフォルト値を SORT_STRING に戻しました。

5.2.9

オプションの sort_flags が追加され、 デフォルトは SORT_REGULAR となりました。5.2.9 より前のバージョンでは、 この関数は内部的に SORT_STRING によるソートを行っていました。

 🙂 array_unshift

(PHP 4, PHP 5, PHP 7)

一つ以上の要素を配列の最初に加える。

説明

array の先頭に指定された要素を加えます。リストの要素は全体として加えられるため、 加えられた要素の順番は変わらないことに注意してください。 配列の数値添字はすべて新たにゼロから振りなおされます。 リテラルのキーについては変更されません。

パラメータ

array

入力の配列。

加える値。

返り値

処理後の array の要素の数を返します。

変更履歴

7.3.0

この関数は、1 つのパラメータでのみ呼び出すことができるようになりました。 前は、少なくとも 2 つのパラメータが必要でした。

 🙂 array_values

(PHP 4, PHP 5, PHP 7)

配列の全ての値を返す。

説明

配列 array から全ての値を取り出し、数値添字をつけた配列を返します。

パラメータ

array

取り出し元の配列。

返り値

数値添字の値の配列を返します。

array_walk_recursive

(PHP 5, PHP 7)

配列の全ての要素に、ユーザー関数を再帰的に適用する。

説明

array 配列の各要素にユーザー定義関数 callbackを適用します。 この関数は配列の要素内を再帰的にたどっていきます。

パラメータ

array

入力の配列。

callback

通常、 callback は引数を二つとります。 array パラメータの値が最初の引数、 キー/添字は二番目の引数となります。

userdata

オプションの userdata パラメータが指定された場合、 コールバック関数 callback への三番目の引数として渡されます。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 array_walk

(PHP 4, PHP 5, PHP 7)

配列の全ての要素にユーザー定義の関数を適用する。

説明

array 配列の各要素にユーザー定義関数 callback を適用します。

array_walk() は array の内部配列ポインタに影響されません。array_walk() はポインタの位置に関わらず配列の全てに渡って適用されます。

パラメータ

array

入力の配列。

callback

通常、 callback は引数を二つとります。 array パラメータの値が最初の引数、 キー/添字は二番目の引数となります。

変更される可能性があるのは配列の値だけであり、 その構造を変更することはできません。つまり、 プログラマは要素の追加や削除そして並べ替えなどができないということです。 コールバック関数がこの条件を満たさない場合は、 この関数の動作は未定義で予期せぬ結果を得ることになります。

userdata

オプションの userdata パラメータが指定された場合、 コールバック関数 callback への三番目の引数として渡されます。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 array

(PHP 4, PHP 5, PHP 7)

配列を生成する。

説明

配列を作成します。

パラメータ

カンマで区切った構文 “index => values” で、インデックスと値を定義します。 インデックスは文字列または数値とすることが可能です。 インデックスが省略された場合、0から始まる整数インデックスが自動的に生成されます。 インデックスが整数の場合、次に生成されるインデックスは、 整数インデックスの最大値 + 1 となります。同じインデックスを二度定義した場合、 後の定義により最初の定義が上書きされることに注意してください。

一般的ではありませんが、 最後に定義された配列エントリの後に続くカンマがある場合、 これは有効な構文です。

返り値

パラメータの配列を返します。パラメータには、 =>演算子によりインデックスを指定することもできます。

 🙂 arsort

(PHP 4, PHP 5, PHP 7)

連想キーと要素との関係を維持しつつ配列を逆順にソートする。

説明

連想配列において各配列のキーと要素との関係を維持しつつソートを行います。主に実際の要素の並び方が重要である連想配列をソートするために使われます。

パラメータ

array

入力の配列。

sort_flags

オプションのパラメータ sort_flags によりソートの動作を修正可能です。詳細については、 sort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 asort

(PHP 4, PHP 5, PHP 7)

連想キーと要素との関係を維持しつつ配列をソートする。

説明

連想配列において各配列のキーと要素との関係を維持しつつ配列をソートします。 主に実際の要素の並び方が重要である連想配列をソートするために使われます。

パラメータ

array

入力の配列。

sort_flags

オプションのパラメータ sort_flags によりソートの動作を修正可能です。 詳細については、sort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

compact

(PHP 4, PHP 5, PHP 7)

変数名とその値から配列を作成する。

説明

変数名とその値から配列を作成します。

各引数について、compact() は現在のシンボルテーブルにおいてその名前を有する変数を探し、 変数名がキー、変数の値がそのキーに関する値となるように追加します。 端的に言うと、extract() の逆の動作をします。

設定されていない全ての文字列は、単にスキップされます。

パラメータ

varname1

compact() がとるパラメータの数は可変です。 各パラメータは、変数名を値とする文字列か、 変数名の配列のどちらかとすることができます。 配列は、変数名を値とする別の配列を持つことができます。 compact()はこれを再帰的に処理します。

返り値

追加された全ての変数を値とする出力配列を返します。

 🙂 count

(PHP 4, PHP 5, PHP 7)

変数に含まれるすべての要素、 あるいはオブジェクトに含まれる何かの数を数える。

説明

変数に含まれるすべての要素、 あるいはオブジェクトに含まれる何かの数を数えます。

オブジェクトに対して、もし SPL がインストールされている場合、インターフェイス Countable を実装することで count() にフックすることができます。このインターフェイスには 1 つのメソッド Countable::count() があり、count() 関数に対する値を返します。

配列の実装やPHPでの使用法に関する詳細な説明については、マニュアルの 配列のセクションを参照ください。

パラメータ

array_or_countable

配列あるいは Countable オブジェクト。

mode

オプションのmode 引数が COUNT_RECURSIVE (または 1) にセットされた場合、count() は再帰的に配列をカウントします。 これは多次元配列の全ての要素をカウントするといった場合に特に有効です。

返り値

array_or_countable に含まれる要素の数を返します。 もしパラメータが配列でもなく Countable インターフェイスを 実装したオブジェクトでもない場合、1 が返されます。 ひとつ例外があり、array_or_countable が NULL の場合、 0 が返されます。

 🙂 current

(PHP 4, PHP 5, PHP 7)

配列内の現在の要素を返す。

説明

各配列は、”カレント”の要素へのポインタを有しています。 このポインタは、その配列の最初の要素を指すように初期化されます。

パラメータ

array

対象となる配列。

返り値

単に内部ポインタが現在指している配列要素の値を返し、ポインタを全く移動しません。 内部ポインタが最終要素の次を指していたり 配列が空だったりした場合は FALSE を返します。

変更履歴

7.0.0

array は常に値で渡されるようになりました。 このバージョンより前は、可能な場合は参照で、それ以外の場合は値で 渡されていました。

 🙂 end

(PHP 4, PHP 5, PHP 7)

配列の内部ポインタを最終要素にセットする。

説明

end() は array の内部ポインタを最後の要素まで進め、その値を返します。

パラメータ

array

配列。この配列は参照渡しとなります。関数内で配列の中身を変更するからです。 つまり、ここには配列そのものを渡さなければならず、 配列を返す関数を指定することはできません。 参照渡しできるのは、実際の変数だけだからです。

返り値

最後の要素の値、あるいは空の配列の場合は FALSE を返します。

extract

(PHP 4, PHP 5, PHP 7)

配列からシンボルテーブルに変数をインポートする。

説明

配列からシンボルテーブルに変数をインポートします。

各キーについて変数名として有効であるかどうか、 そして、シンボルテーブルの既存の変数と衝突しないかどうかを確認します。

パラメータ

array

この関数は連想配列 var_array を引数とし、そのキーを変数名、値を変数の値として処理します。 各キー/値の組に関して、flags および prefix パラメータに基づき、 現在のシンボルテーブルに変数を一つ作成します。

連想配列を使用する必要があります。EXTR_PREFIX_ALL または EXTR_PREFIX_INVALID を使用しない限り、 数値添字の配列には結果は出力されません。

flags

無効または数値キーおよび衝突に関する対処法は、 flags で定義されます。 これは以下の値のどれかとなります。

flags が指定されない場合、 EXTR_OVERWRITE とみなされます。

EXTR_OVERWRITE

衝突があった場合、存在する変数が上書きされます。

EXTR_SKIP

衝突があった場合、存在する変数は上書きされません。

EXTR_PREFIX_SAME

衝突があった場合、prefix を前につけた新しい変数となります。

EXTR_PREFIX_ALL

全ての変数の前に prefix を付けます。

EXTR_PREFIX_INVALID

無効または数値の変数名のみに接頭辞 prefix を付けます。

EXTR_IF_EXISTS

現在のシンボルテーブルに既に存在する場合にのみ上書きします。 例えば $_REQUEST 以外にあなたが定義した変数のみを展開し 有効な変数としたいような場合に有用です。

EXTR_PREFIX_IF_EXISTS

同じ変数だが接頭辞をつけていないバージョンの変数が 現在のシンボルテーブルに存在する場合にのみ 変数を生成します。

EXTR_REFS

変数を参照として展開します。 これはインポート済みの変数が、 array パラメータの値に常に参照付けられることを意味します。 このフラグを単独で使用するか、 あるいはflagsと和算することにより、 他のフラグとそれを組み合わせることができます。

prefix

prefix は、 flags が EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、 EXTR_PREFIX_INVALID あるいは EXTR_PREFIX_IF_EXISTS の場合にのみ必要であることに注意してください。 接頭辞を付けた変数名が有効な変数名でない場合、 この変数はシンボルテーブルにインポートされません。接頭辞は、 アンダースコア文字で配列のキーから自動的に分割されます。

返り値

シンボルテーブルにインポートした変数の数を返します。

 🙂 in_array

(PHP 4, PHP 5, PHP 7)

配列に値があるかチェックする。

説明

needle で haystack を検索します。 strict が設定されていない限りは型の比較は行いません。

パラメータ

needle

探す値。

haystack

配列。

strict

三番目のパラメータ strict が TRUE に設定された場合、 in_array() は、haystack の中の needle の 型も確認します。

返り値

配列で needle が見つかった場合に TRUE、それ以外の場合は、FALSE を返します。

 🙂 key

(PHP 4, PHP 5, PHP 7)

配列からキーを取り出す。

説明

key() は、 現在の配列位置における連想配列要素のキーを返します。

パラメータ

array

対象となる配列。

返り値

内部ポインタが現在指している配列要素のキーを返します。 ポインタを移動することはありません。内部ポインタが要素リストの末尾にいる場合や配列が空の場合は NULL を返します。

変更履歴

7.0.0

array は常に値で渡されるようになりました。 このバージョンより前は、可能な場合は参照で、それ以外の場合は値で 渡されていました。

krsort

(PHP 4, PHP 5, PHP 7)

配列をキーで逆順にソートする。

説明

配列をキーにより逆順にソートします。キーとデータとの関係は維持されます。 この関数は主に連想配列の場合に有用です。

パラメータ

array

入力の配列。

sort_flags

オプションのパラメータ sort_flags によりソートの動作を修正可能です。詳細については、 sort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 ksort

(PHP 4, PHP 5, PHP 7)

配列をキーでソートする。

説明

キーとデータの関係を維持しつつ、配列をキーでソートします。 この関数は、主として連想配列において有用です。

パラメータ

array

入力の配列。

sort_flags

オプションのパラメータ sort_flags によりソートの動作を修正可能です。詳細については、 sort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 list

(PHP 4, PHP 5, PHP 7)

配列と同様の形式で、複数の変数への代入を行う。

説明

array() と同様に、 この関数は実際には関数ではなく言語構造です。 list() は、 単一の操作で一連の変数に値を代入するために使われます。

パラメータ

var1

代入の対象となる変数。

返り値

代入した配列を返します。

変更履歴

7.0.0

代入操作が行われる順番が変わりました 。

7.0.0

list() の式をまったくの空にすることはできなくなりました 。

7.0.0

文字列は扱えなくなりました 。

 🙂 natcasesort

(PHP 4, PHP 5, PHP 7)

大文字小文字を区別しない”自然順”アルゴリズムを用いて配列をソートする。

説明

大文字小文字を区別しないバージョンの natsort() です。

人間が行うような手法でアルファベットまたは数字の文字列の順番を キー/値の関係を保持したままソートします。 これは、”自然順(natural ordering)”と呼ばれているものです。

パラメータ

array

対象となる配列。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 natsort

(PHP 4, PHP 5, PHP 7)

“自然順”アルゴリズムで配列をソートする。

説明

人間が行うような手法でアルファベットまたは数字の文字列の順番を キー/値の関係を保持したままソートします。 これは、”自然順(natural ordering)”と呼ばれているものです。

パラメータ

array

対象となる配列。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

変更履歴

5.2.10

ゼロ埋めされた数値形式の文字列 (‘00005’ など) では、基本的にゼロを無視するようになりました。

next

(PHP 4, PHP 5, PHP 7)

配列の内部ポインタを進める。

説明

次の配列要素を返すとともに内部配列ポインタをひとつ進めます。

パラメータ

array

対象となる配列。

返り値

内部配列ポインタが指す場所の次の場所の値を返します。 それ以上要素がない場合は FALSE を返します。

prev

(PHP 4, PHP 5, PHP 7)

内部の配列ポインタをひとつ前に戻す。

説明

内部の配列ポインタをひとつ前に戻します。

パラメータ

array

対象となる配列。

返り値

内部の配列ポインタが指している前の場所の配列値を返します。 もう要素がない場合は FALSE を返します。

 🙂 range

(PHP 4, PHP 5, PHP 7)

ある範囲の整数を有する配列を作成する。

説明

ある範囲の整数を有する配列を作成します。

パラメータ

start

シーケンスの最初の値。

end

値が end に達するまでシーケンスが続きます。

step

step が指定されている場合、それは 要素毎の増加数となります。step は正の数でなければなりません。デフォルトは 1 です。

返り値

start から end までの整数の配列を返します。

 🙂 reset

(PHP 4, PHP 5, PHP 7)

配列の内部ポインタを先頭の要素にセットする。

説明

array の内部ポインタの先頭の要素に戻し、配列の最初の要素の値を返します。

パラメータ

array

対象となる配列。

返り値

配列の最初の要素の値を返します。 配列が空の場合 FALSE を返します。

 🙂 rsort

(PHP 4, PHP 5, PHP 7)

配列を逆順にソートする。

説明

配列を逆順に(高位から低位に)ソートします。

パラメータ

array

入力の配列。

sort_flags

オプションのパラメータ sort_flags によりソートの動作を修正可能です。詳細については、 sort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 shuffle

(PHP 4, PHP 5, PHP 7)

配列をシャッフルする。

説明

配列をシャッフル (要素の順番をランダムに) します。 この関数が使う疑似乱数生成器は、暗号学的な使い方には適していません。

パラメータ

array

対象となる配列。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

変更履歴

7.1.0

The internal randomization algorithm has been changed to use the » Mersenne Twister Random Number Generator instead of the libc rand function.

 🙂 sort

(PHP 4, PHP 5, PHP 7)

配列をソートする。

説明

各要素が小さい順に並び変わった状態になります。

パラメータ

array

対象となる配列。

sort_flags

オプションの 2 番目のパラメータ sort_flags は、以下の値によりソートの動作を修正するために使用することが可能です。

ソート型のフラグ:

  • SORT_REGULAR – 通常通りに項目を比較 (型は変更しません)
  • SORT_NUMERIC – 数値的に項目を比較
  • SORT_STRING – 文字列として項目を比較
  • SORT_LOCALE_STRING – は、現在のロケールに基づいて比較します。 比較に使うロケールは、setlocale() で変更できます。
  • SORT_NATURAL – 要素の比較を文字列として行い、 natsort() と同様の「自然順」で比較します。
  • SORT_FLAG_CASE – SORT_STRING や SORT_NATURAL と (ビット OR で) 組み合わせて使い、 文字列のソートで大文字小文字を区別しないようにします。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

変更履歴

5.4.0

sort_flags に SORT_NATURAL と SORT_FLAG_CASE が使えるようになりました。

5.0.2

SORT_LOCALE_STRING が追加されました。

uasort

(PHP 4, PHP 5, PHP 7)

ユーザー定義の比較関数で配列をソートし、連想インデックスを保持する。

説明

インデックスとそれに対応する要素を関連づけた配列をソートします。 ソートには、ユーザー定義の比較関数を使います。

主に実際の配列の順序に意味がある連想配列をソートするためにこの関数は使用されます。

パラメータ

array

入力の配列。

value_compare_func

ユーザー定義の比較関数の例については、 usort() および uksort() を参照ください。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

uksort

(PHP 4, PHP 5, PHP 7)

ユーザー定義の比較関数を用いて、キーで配列をソートする。

説明

ユーザー定義の比較関数を用いて配列のキーをソートします。 ソートしたい配列を複雑な基準でソートする必要がある場合には、 この関数を使う必要があります。

パラメータ

array

対象となる配列。

key_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

usort

(PHP 4, PHP 5, PHP 7)

ユーザー定義の比較関数を使用して、配列を値でソートする。

説明

ユーザー定義の比較関数により配列をその値でソートします。 ソートしたい配列を複雑な基準でソートする必要がある場合、 この関数を使用するべきです。

パラメータ

array

対象となる配列。

value_compare_func

比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。PHP 7.0.0 より前のバージョンでは、この整数が -2147483648 から 2147483647 までの範囲におさまる必要がありました。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

 🙂 is_array

(PHP 4, PHP 5, PHP 7)

変数が配列かどうかを検査する。

説明

与えられた変数が配列かどうかを検査します。

パラメータ

var

評価する変数。

返り値

var が 配列型 の場合 TRUE、 そうでない場合 FALSE を返します。

 🙂 explode

(PHP 4, PHP 5, PHP 7)

文字列を文字列により分割する。

説明

文字列の配列を返します。この配列の各要素は、 string を文字列 delimiter で区切った部分文字列となります。

パラメータ

delimiter

区切り文字列。

string

入力文字列。

limit

limit に正の値が指定された場合、返される配列には 最大 limit の要素が含まれ、その最後の要素には string の残りの部分が全て含まれます。

もし limit パラメータが負の場合、 最後の -limit 個の要素を除く全ての構成要素が返されます。

limit パラメータがゼロの場合は、1 を指定したものとみなされます。

返り値

string の内容を delimiter で分割した文字列の配列を返します。

空の文字列 (“”) が delimiter として使用された場合、 explode() は FALSE を返します。delimiter に引数 string に含まれていない値が含まれている場合は、 limit が負の値なら空の配列、そうでなければ 引数 string を含む配列を返します。

変更履歴

5.1.0

limit に負の数を指定できるようになりました。

 🙂 implode

(PHP 4, PHP 5, PHP 7)

配列要素を文字列により連結する。

説明

配列の要素を glue 文字列で連結します。

パラメータ

glue

デフォルトは空文字列です。

pieces

連結したい文字列の配列。

返り値

すべての配列要素の順序を変えずに、各要素間に glue 文字列をはさんで 1 つの文字列にして返します。

 🙂 preg_split

(PHP 4, PHP 5, PHP 7)

正規表現で文字列を分割する。

説明

指定した文字列を、正規表現で分割します。

パラメータ

pattern

検索するパターンを表す文字列。

subject

入力文字列。

limit

これを指定した場合、最大 limit 個の部分文字列を返します。 残りの文字列は、最後の部分文字列に含めて返されます。 limit が -1 あるいは 0 の場合は「制限が無い」ことを意味します。 制限を指定せずに flags パラメータを指定したい場合などに NULL を使用します。

flags

flags は、次のフラグを組み合わせたものとする (ビット和演算子 | で組み合わせる)ことが可能です。

PREG_SPLIT_NO_EMPTY

このフラグを設定すると、空文字列でないものだけが preg_split() により返されます。

PREG_SPLIT_DELIM_CAPTURE

このフラグを設定すると、文字列分割用のパターン中の カッコによるサブパターンでキャプチャされた値も同時に返されます。

PREG_SPLIT_OFFSET_CAPTURE

このフラグを設定した場合、各マッチに対応する文字列のオフセットも返されます。 これにより、返り値は配列となり、配列の要素 0 はマッチした文字列、 要素 1 は subject におけるマッチした文字列のオフセット値となることに 注意してください。

返り値

pattern にマッチした境界で分割した subject の部分文字列の配列を返します。失敗した場合に FALSE を返します。

スポンサーリンク
  • このエントリーをはてなブックマークに追加

水蕗をフォローする

コメントを残す