PHPのchunk()関数を使用し配列を新しい配列のひとかたまりに分割してみます。
chunk()関数は、配列を新しい配列のひとかたまりに分割することができます。
戻り値は、「0」から始まる多次元のインデックス付き配列で、各次元にはサイズ要素が含まれる。
■基本的な構文
array_chunk(array, size, preserve_key)
arrayは、 新しい配列のひとかたまりに分割する配列を指定します。
sizeは、ひとかたまりに分割するためのサイズを整数で指定します。
preserve_keyは、True(真)でキーを保持することができ、False(偽)で、ひとかたまりにした時のインデックスを数値で再作成することができます。False(偽)はデフォルトです。
■環境
・Windows10
・XAMPP 8.0.6
・PHP Version 8.0.6
■PHPのchunk()関数を使用し配列を新しい配列のひとかたまりに分割
では、PHPのchunk()関数を使用し配列を新しい配列のひとかたまりに分割するスクリプトを書いていきます。
■コード
<html lang="ja">
<head>
<title>chunk()関数を使用し配列を新しい配列のひとかたまりに分割</title>
</head>
<body>
<?php
$str = array("a"=>"apple","b"=>"banana","c"=>"strawberry","d"=>"dragonfruit","e"=>"mango","f"=>"watermelon");
print_r(array_chunk($str,2));
?>
</body>
</html>
今回はstrという変数を定義し、その中でarray()関数を使用し、キーと値のペアを格納します。これで配列が作成されます。キーと値のペアは全部で「6」つあります。
作成後、array_chunk()関数を使用します。array_chunk()関数の括弧内には、第1の引数,パラメーターとして、str変数を渡します。第2の引数,パラメーターとして、str変数内の配列を、いくつの新しい配列のひとかたまりに分割するのかの数(整数)を渡します。今回は「2」としています。なお、分割された新しい配列のひとかたまりは、インデックスが「0」から始まります。
これで、str変数内の配列を、3つの配列のひとかたまりに分割し、分割された配列が返されます。
返された配列をprint_r()関数で出力してみます。
■実行
では、このスクリプトを「split_array_into_chunks.php」という名前で保存し、実行させてみます。
Array (
[0] => Array ( [0] => apple [1] => banana )
[1] => Array ( [0] => strawberry [1] => dragonfruit )
[2] => Array ( [0] => mango [1] => watermelon )
)
実行してみると、array_chunk()関数を使用したことで、str変数内の配列が、3つの新しい配列のひとかたまりに分割され、分割された配列をprint_r()関数で出力させることができ新しいました。
1つ1つの新しい配列のひとかたまりを確認してみると、インデックスが「0」から始まり、値ごとに「1」ずつ増加する整数が割り振られていることが確認できました。
コメント