イテレータにある要素をカウントする

# iterator_count

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

iterator_count — イテレータにある要素をカウントする

### 説明

function iterator_count(Traversable|array `$iterator`): int

イテレータにある要素をカウントします。 iterator_count() は、 `iterator` の現在位置がそのまま保たれることを保障しません。

### パラメータ

`iterator`

  カウントしたいイテレータ。

### 戻り値

`iterator` の要素数を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.2.0 | `iterator` の型が Traversable から、 Traversable|array に拡大されました。

### 例

例1 iterator_count() の例

    <?php
    $iterator = new ArrayIterator(array('recipe'=>'pancakes', 'egg', 'milk', 'flour'));
    var_dump(iterator_count($iterator));
    ?>

上の例の出力は以下となります。

    int(4)

例2 iterator_count() で位置を変更する例

    <?php
    $iterator = new ArrayIterator(['one', 'two', 'three']);
    var_dump($iterator->current());
    var_dump(iterator_count($iterator));
    var_dump($iterator->current());
    ?>

上の例の出力は以下となります。

    string(3) "one"
    int(3)
    NULL

例3 `foreach` ループ内での iterator_count()

    <?php
    $iterator = new ArrayIterator(['one', 'two', 'three']);
    foreach ($iterator as $key => $value) {
        echo "$key: $value (", iterator_count($iterator), ")\n";
    }?>

上の例の出力は以下となります。

    0: one (3)

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open