解 説

配列の基本的な作成方法はPHP基礎の記事も参考にしてください。
PHP基礎 (06) 配列
ここではもう少し詳しく配列の操作方法を学習します。

PHPの配列作成方法

インデックス配列の基本的な書き方は、空の配列をarray()で作成した後に各インデックスに値を代入します。
インデックスは0から始まります。

配列にした要素を展開するには該当するキーを指定します。

基本的な配列作成方法と要素の展開例
PHPコード

配列はarray()構文の引数に値を入れる事でもっと簡単に作成することもできます。通常はこの方法をとります。

array()構文を使った例
PHPコード

インデックス配列の要素を順番に全て書き出すにはforeach文を使用すると便利です。

foreach ($array_expression as $value){
$valueを含んだ命令文
}

foreachを使用してすべての要素を書き出す例
PHPコード

ここで用いた「.=」は結合代入です。命令文で書き出された要素の値を変数に結合しながら代入します。
ポイントは$result=””;のように事前に初期化しておく必要があります。そうしないと1番最初の値が不明になり、警告が出ます。

配列に含まれる要素の数はcount()で求めることができます。

配列に含まれる要素の数を求める例
PHPコード

連想配列

インデックス配列はキーが0から始まる数字で作られますが、キーを自分の好きな文字列にすることもできます。
このような配列を連想配列と呼びます。キーと値をダブルアロー「=>」でつなぎます。

連想配列の書き方
PHPコード

連想配列をforeach文で展開するには少し書き方が変わります。

foreach ($array_expression as $key => $value){
$key と $valueを含んだ命令文
}

range(開始値, 終了値)を使うと引数で指定した開始値から終了値まで順番に増加する配列を作成することができます。
数字かアルファベットの配列を作成するときに便利です。

range()を使った配列の例
PHPコード

配列の追加と削除

配列の要素の追加と削除をまとめると次のようになります。

php1

array_unshift()

array_unshift() は、array の先頭に指定された要素を加えます。配列の数値添字はすべて新たにゼロから振りなおされます。
返り値は array の要素の数です。
array_unshiftの例
phpコード

array_push()

指定された要素を array の最後に加えます。配列 array の長さは渡された変数の数だけ増加します。
返り値は array の要素の数です。
array_pushの例
PHPコード

array_slice()

第2引数で指定した要素から第3引数で指定した個数を切り取ります。
返り値は切り取った要素を返します。もともとの配列に変化はありません。
slice
array_sliceの例
PHPコード

array_splice()

これは切り取りと置換関連の配列操作を行うことができる便利な関数ですが、使い方がわかりにくいのが難点です。
配列変数から第2引数で指定した要素から第3引数で指定した個数を切り取ります。array_slice()との違いは切り取られた配列の値が本当に切り取られてなくなります。
splice

また、さらに第4引数に置き換えの値を指定すると、削除された値の中に置き換えの値が入ります。
複数の値を入れたい場合は第4引数に配列を指定します。
splice2
array_spliceの例
PHPコード

array_spliceの返り値の例
PHPコード

ちょっと変わった例として、file()があります。これはファイルの読み込みや書き込みて利用するものです。
file()の例
PHPコード