php利用array_slice関数はランダム配列または前のデータを取得します
2983 ワード
まず基本的な文法をお話しします.
array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] )
array_slice()はoffsetパラメータとlengthパラメータに基づいて指定されたarray配列のシーケンスを返します.
offsetが負でない場合、シーケンスはarrayのオフセット量から開始します.offsetが負の場合、シーケンスはarrayの末端からこんなに遠いところから始まります.
lengthが与えられ、正の場合、シーケンスにはこんなに多くのセルがあります.lengthが与えられ負の場合、シーケンスは配列の末端からこんなに遠いところで終了します.省略すると、シーケンスはoffsetからarrayの末端まで続きます.
注意array_slice()はデフォルトで配列のキーをリセットします.PHP 5.0.2よりpreserve_keysは、この動作を変更するためにTRUEに設定される.
ランダムなデータをいくつか返す必要がある場合は、shuffle($input)を先に使用します.元の配列を乱してarrayを使うslice取得
PS:PHP array_slice()関数
定義と使用法
array_slice()関数は、配列内で条件に基づいて値を取り出し、返します.
注記:配列に文字列キーがある場合、返される配列はキー名を保持します.(例4参照)
構文
パラメータ
説明
array
必要です.入力された配列を指定します.
offset
必要です.を選択します.取り出し要素の開始位置を指定します.
正数の場合は、行き先から取り、負の場合はoffset絶対値を後ろから前へ取ります.
length
オプション.を選択します.返される配列の長さを指定します.
lengthが正の場合、その数の要素が返されます.
lengthが負の場合、シーケンスは配列の末端からこんなに遠いところで終了します.
省略すると、シーケンスはoffsetからarrayの末端まで開始されます.
preserve
オプション.可能な値:
・true-保留キー
・false-デフォルト-リセットキー
例1
出力:
例2
負のoffsetパラメータ:
出力:
例3
preserveパラメータがtrueに設定されています.
出力:
例4
文字列キー:
出力:
以上、本稿で紹介するphp利用array_slice関数は配列のランダムまたは前のいくつかのデータを取得して、みんなが好きになることを望みます.
array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] )
array_slice()はoffsetパラメータとlengthパラメータに基づいて指定されたarray配列のシーケンスを返します.
offsetが負でない場合、シーケンスはarrayのオフセット量から開始します.offsetが負の場合、シーケンスはarrayの末端からこんなに遠いところから始まります.
lengthが与えられ、正の場合、シーケンスにはこんなに多くのセルがあります.lengthが与えられ負の場合、シーケンスは配列の末端からこんなに遠いところで終了します.省略すると、シーケンスはoffsetからarrayの末端まで続きます.
注意array_slice()はデフォルトで配列のキーをリセットします.PHP 5.0.2よりpreserve_keysは、この動作を変更するためにTRUEに設定される.
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, ); // returns "c", "d", and "e"
$output = array_slice($input, -, ); // returns "d"
$output = array_slice($input, , ); // returns "a", "b", and "c"
// note the differences in the array keys
print_r(array_slice($input, , -));
print_r(array_slice($input, , -, true));
ランダムなデータをいくつか返す必要がある場合は、shuffle($input)を先に使用します.元の配列を乱してarrayを使うslice取得
PS:PHP array_slice()関数
定義と使用法
array_slice()関数は、配列内で条件に基づいて値を取り出し、返します.
注記:配列に文字列キーがある場合、返される配列はキー名を保持します.(例4参照)
構文
array_slice(array,offset,length,preserve)
パラメータ
説明
array
必要です.入力された配列を指定します.
offset
必要です.を選択します.取り出し要素の開始位置を指定します.
正数の場合は、行き先から取り、負の場合はoffset絶対値を後ろから前へ取ります.
length
オプション.を選択します.返される配列の長さを指定します.
lengthが正の場合、その数の要素が返されます.
lengthが負の場合、シーケンスは配列の末端からこんなに遠いところで終了します.
省略すると、シーケンスはoffsetからarrayの末端まで開始されます.
preserve
オプション.可能な値:
・true-保留キー
・false-デフォルト-リセットキー
例1
"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2));
?>
出力:
Array ( [0] => Cat [1] => Horse )
例2
負のoffsetパラメータ:
"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,-2,1));
?>
出力:
Array ( [0] => Horse )
例3
preserveパラメータがtrueに設定されています.
"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2,true));
?>
出力:
Array ( [1] => Cat [2] => Horse )
例4
文字列キー:
"Dog","b"=>"Cat","c"=>"Horse","d"=>"Bird");
print_r(array_slice($a,1,2));
?>
出力:
Array ( [b] => Cat [c] => Horse )
以上、本稿で紹介するphp利用array_slice関数は配列のランダムまたは前のいくつかのデータを取得して、みんなが好きになることを望みます.