count
| 解説 | 配列の要素数を数える |
|---|---|
| 書式 | int count( mixed var [, int mode ] ) |
int count( mixed 配列 [, int モード ] ) |
|
| 引数 |
var
配列
|
mode
再帰的にカウントするかどうかのモード
|
|
| 返値 | 配列の要素数 |
count()は、指定した配列の要素数を数える関数です。
var
配列
mode
モード
count()は、キー(添え字)の最大値を返すわけではなく、要素の数を返しますので注意して下さい。
サンプルスクリプト
簡単な利用例
<?php
$a[] = "10";
$a[] = "25";
$a[] = "8";
print count( $a ); // 配列の要素数を出力
?>
出力結果
3
要素数を返す
<?php
$arr[5] = "28";
$arr[20] = "15";
$arr[50] = "6";
// キーの最大値ではなく要素数を返す
print count( $arr );
?>
出力結果
3
COUNT_RECURSIVEサンプル
<?php
$food["fruits"][] = "りんご";
$food["fruits"][] = "オレンジ";
$food["fruits"][] = "バナナ";
$food["vegetable"][] = "トマト";
$food["vegetable"][] = "なす";
$food["vegetable"][] = "にんじん";
echo "通常のカウント:".count( $food )."<br />\n";
echo "再帰的カウント:".count( $food, COUNT_RECURSIVE );
?>
出力結果
通常のカウント:2
再帰的カウント:8
再帰的カウント:8
for文で配列をすべて出力
<?php
$animal[] = "犬";
$animal[] = "猫";
$animal[] = "鹿";
// 配列の値を改行しながらすべて出力
for( $i = 0; $i < count( $animal ); $i++ ){
echo $animal[$i]."<br />\n";
}
?>
出力結果
犬
猫
鹿
猫
鹿
※for文は配列のキーが連続で隙間なく埋まっている場合にのみ使えます。そうでない場合はforeach文を使って下さい。
引数の状態による返り値の違い
<?php
print "未定義の変数の場合:".count( $未定義の変数 )."<br />\n";
print "未定義の配列の場合:".count( array() )."<br />\n";
print "文字列の場合:".count( "文字列" );
?>
出力結果
未定義の変数の場合:0
未定義の配列の場合:0
文字列の場合:1
未定義の配列の場合:0
文字列の場合:1


