2016-07-26 4 views
0

Вот мой основной массив в моих рамкахЯвляется ли массив экземпляром Traversable?

array(2) { 
    [0]=> 
    string(2) "40" 
    [1]=> 
    string(2) "41" 
} 

Вот мои тесты:

echo($array instanceof Traversable); // 0 
echo(is_array($array)); // 1 

кажется мой стандартный массив PHP не является экземпляр проходимого, который кажется непоследовательным.

+0

Массивы не реализуют 'Traversable' в PHP, но они будут пересекаться в' foreach' – Aaron

+0

Массив не является классом, поэтому он даже не способен распространяться ни от какого класса или интерфейса. Traversable для таких вещей, как итераторы и т. Д. – Rizier123

+0

Начиная с PHP 7.1, вы можете использовать псевдонимов 'iterable' как объявление типа, что позволяет использовать массивы или что-то, что реализует Traversable: http://php.net/manual/en/language.types.iterable.php –

ответ

2

Правильно, это не движение.

Основная цель интерфейса Traversable - сделать объекты пригодными для использования с foreach.

Смежные вопросы