PHP - BASIC - 10. PHPの配列を扱う関数 - 5. array_slice関数
array_slice
関数は配列の一部分を返却する関数です。次のプログラム( arr4.php
)を作成してみましょう。
<?php
$array = ["Andy", "Betty", "Carol"];
$sliced_array = array_slice($array, 1);
print_r($sliced_array);
array_slice
関数は引数を2つ指定します。
- 第1引数
- 一部分の取得対象となる配列
- 第2引数
- 開始位置
さきほどのプログラムの場合は array_slice
関数の第1引数に $array
、第2引数に 1
を指定しています。この場合、 array_slice
関数は ["Andy", "Betty", "Carol"]
という配列の 1
番目の要素以降を戻り値として返します。またここでは戻り値を受け取るために $sliced_array
変数を用意しています。最後に変数 $sliced_array
には配列が代入されるので print_r
関数で出力しています。
それでは作成したプログラムを実行してみましょう。ターミナルから次のように実行します。
$ php arr4.php
Array
(
[0] => Betty
[1] => Carol
)
実行結果から ["Andy", "Betty", "Carol"]
を要素番号が 1
番目以降の要素が配列として出力されているのがわかります。
また array_slice
関数の第3引数に開始位置からの要素数を指定することも可能です。さきほどのプログラム( arr4.php
)を修正してみましょう。
<?php
$array = ["Andy", "Betty", "Carol"];
$sliced_array = array_slice($array, 1, 1);
print_r($sliced_array);
修正したプログラムを実行してみましょう。ターミナルから次のように実行します。
$ php arr4.php
Array
(
[0] => Betty
)
実行結果から ["Andy", "Betty", "Carol"]
の要素番号が 1
番目以降の要素について 1
つだけ取得し、配列として出力されているのがわかります。
まとめ
array_slice
— 配列の一部を展開する- 引数
- 一部分の取得対象となる配列
- 開始位置
- 開始位置からの要素数 (省略可能)
- 戻り値
- 切り取った配列