【PHP】array_sliceの使い方。配列を範囲指定して切り取る関数
PHPで、配列の範囲指定で切り取れる便利な関数、array_sliceの使い方をまとめました。
array_sliceの仕様
基本文法
array_slice($array, $offset [,$length = NULL [,$preserve_keys = false]]);
※[]内は省略可能な引数
各種引数の役割
第一引数 | array(必須) | 処理を行う配列です。 |
---|---|---|
第二引数 | offset(必須) | 切り取る配列の0から数えた開始位置です。 0を選んだ場合、先頭から切り取ります。 -2など負数の場合は、配列の最後から数えた位置になります。 |
第三引数 | length(任意) | 切り取る件数を指定します。 初期値はNULLで、省略した場合、offsetで選んだ位置から末尾まですべての要素を返します。 負数の場合は、配列の末尾から数えた位置まで取得します。(0から数えないので注意) |
第四引数 | preserve_keys(任意) | 取得した配列のキーを0からの連番にするか、元のキーを参照するかを指定します。 デフォルトはfalseで、元のキーは破棄され連番となります。 |
array_sliceのサンプルコード例
先頭から5件の配列を取得する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, 0, 5); print_r($aryOutput);
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
)
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
)
0から数えて4つ目の位置から、2件の配列を取得する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, 4, 2); print_r($aryOutput);
Array
(
[0] => e
[1] => f
)
(
[0] => e
[1] => f
)
0から数えて3つ目の位置から、末尾までの配列を取得する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, 3); print_r($aryOutput);
Array
(
[0] => d
[1] => e
[2] => f
[3] => g
[4] => h
[5] => i
[6] => j
)
(
[0] => d
[1] => e
[2] => f
[3] => g
[4] => h
[5] => i
[6] => j
)
末尾から4件の配列を取得する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, -4); print_r($aryOutput);
Array
(
[0] => g
[1] => h
[2] => i
[3] => j
)
(
[0] => g
[1] => h
[2] => i
[3] => j
)
末尾から4つ目の位置から、末尾から2つ目までの配列を取得する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, -4, -1); print_r($aryOutput);
Array
(
[0] => g
[1] => h
[2] => i
)
(
[0] => g
[1] => h
[2] => i
)
0から数えて5つ目の位置から、3件の配列を取得し、元のキーを維持する
サンプルコード
$arySample = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; $aryOutput = array_slice($arySample, 5, 3, true); print_r($aryOutput);
Array
(
[5] => f
[6] => g
[7] => h
)
(
[5] => f
[6] => g
[7] => h
)
array_sliceの検証用入力フォーム
array_sliceの値からどのような値が返ってくるかを検証できるツールです。
引数を自由に入力してお試し下さい。
ディスカッション
コメント一覧
まだ、コメントがありません