downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Iterator> <Встроенные интерфейсы
[edit] Last updated: Fri, 25 May 2012

view this page in

Интерфейс Traversable

(Информация о версии неизвестна, возможно, только в SVN)

Введение

Интерфейс, определяющий, является ли класс обходимым (traversable) используя foreach.

Абстрактный базовый интерфейс, который не может быть реализован сам по себе. Вместо этого он должен быть реализован используя IteratorAggregate или Iterator.

Замечание:

Внутренние (встроенные) классы которые реализует этот интерфейс могут быть использованы в конструкции foreach и не обязаны реализовывать IteratorAggregate или Iterator.

Замечание:

Это внутренний интерфейс движка, который не может быть реализован в скрипте PHP. Либо IteratorAggregate, либо Iterator должен быть использован вместо него.

Обзор интерфейсов

Traversable {
}

Этот интерфейс не имеет методов, его единственная цель - быть базовым интерфейсом для всех обходимых классов.



add a note add a note User Contributed Notes Traversable
kevinpeno at gmail dot com 02-Aug-2010 10:06
While you cannot implement this interface, you can use it in your checks to determine if something is usable in for each. Here is what I use if I'm expecting something that must be iterable via foreach.

<?php
   
if( !is_array( $items ) && !$items instanceof Traversable )
       
//Throw exception here
?>

 
show source | credits | sitemap | contact | advertising | mirror sites