PHP マニュアル
前のページ |  | 次のページ

# count

(PHP 3, PHP 4, PHP 5)

count -- 変数に含まれる要素、 あるいはオブジェクトに含まれるプロパティの数を数える

## 説明

int count ( mixed var [, int mode] )

`var`に含まれる要素の数を返します。 他のものには、1つの要素しかありませんので、通常 `var` は配列です。

オブジェクトに対して、もし SPL がインストールされている場合、インターフェース `Countable` を実装することで count() にフックすることができます。このインターフェースには 1 つのメソッド count() があり、count() 関数に対する値を返します。

もし `var` が配列もしくは `Countable` インターフェースを実装したオブジェクトではない場合、 `1` が返されます。 ひとつ例外があり、`var` が `NULL` の場合、 `0` が返されます。

> 注意: オプションの引数 `mode` は PHP 4.2.0 以降で使用可能です。

オプションの`mode` 引数が `COUNT_RECURSIVE` (または 1) にセットされた場合、count() は再帰的に配列をカウントします。 これは多次元配列の全ての要素をカウントするといった場合に特に有効です。 `mode` のデフォルトは `0` です。 count() は無限の再帰を検出しません。

注意
count() は、セットされていない変数に関して 0 を返しますが、変数が空の配列として初期化されている場合にも 0 を返します。 ある変数がセットされているかどうかを調べるには、 isset() を使用してください。

配列の実装やPHPでの使用法に関する詳細な説明については、マニュアルの 配列のセクションを参照ください。

例 1. count() の例

`<?php $a[0] = 1; $a[1] = 3; $a[2] = 5; $result = count($a); // $result == 3 $b[0] = 7; $b[5] = 9; $b[10] = 11; $result = count($b); // $result == 3 $result = count(null); // $result == 0 $result = count(false); // $result == 1 ?>`

例 2. 再帰的な count() の例 (PHP >= 4.2.0)

`<?php $food = array('fruits' => array('orange', 'banana', 'apple'), 'veggie' => array('carrot', 'collard', 'pea')); // 再帰的なカウント echo count($food, COUNT_RECURSIVE); // output 8 // 通常のカウント echo count($food); // output 2 ?>`

is_array()、 isset() および strlen() も参照ください。

前のページ | ホーム | 次のページ
compact | 上に戻る | current