PHPのcount()で配列の要素数を取得する方法を紹介します。
配列の要素数を取得する
配列の要素を取得するときにcount()を使用します。count()はある配列に対してその要素数がいくつあるかを返す関数です。
count()の書式は以下のとおりです。
1 |
変数 = count(配列, [ モード ] ) |
第2引数は省略できますが、第2引数に「COUNT_RECURSIVE」を渡すことによって再帰的に配列の要素数がカウントされます。
以下はcount()を使用した例です。
1 2 3 4 5 |
<?php $color = array("red", "yellow", "blue"); $count = count($color); echo $count; ?> |
上の実行結果は以下のようになります。
1 |
3 |
次は、配列が入れ子になっている場合の例です。
1 2 3 4 5 |
<?php $color = array("red", "yellow", array("blue", "white")); $count = count($color); echo $count; ?> |
これの実行結果は以下のようになります。
1 |
3 |
配列が入れ子になった場合も、配列がひとつの要素と見なされるので上のような結果になります。
では、count()の第2引数に「COUNT_RECURSIVE」という引数を渡してみるとどういう結果になるのでしょう。
具体的な例を示します。
1 2 3 4 5 |
<?php $color = array("red", "yellow", array("blue", "white")); $count = count($color, COUNT_RECURSIVE); echo $count; ?> |
上の実行結果は以下のようになります。
1 |
5 |
要素数は入れ子の中の要素も含めて全部で4個ありますが、配列(array)自身も要素と見なされ、5個とカウントされます。