/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/spl/tests/ArrayObject/array_012.phpt
62 строки
948 B
Gina Peter Banyard
ext/spl: Deprecate ArrayObject and ArrayIterator with objects (#19420)
14 авг 2025, 14:38
Не верифицирован
14 авг 2025, 14:38
fb87b14
Код
Авторство
О чём код?
--TEST-- SPL: ArrayIterator::count --FILE-- <?php echo "===Array===\n"; $a = array('zero' => 0, 'one' => 1, 'two' => 2); $it = new ArrayIterator($a); var_dump($it->count()); foreach($it as $key => $val) { echo "$key=>$val\n"; var_dump($it->count()); } var_dump($it->count()); echo "===Object===\n"; class test { public $zero = 0; protected $pro; public $one = 1; private $pri; public $two = 2; } $o = new test; $it = new ArrayIterator($o); var_dump($it->count()); foreach($it as $key => $val) { echo "$key=>$val\n"; var_dump($it->count()); } var_dump($it->count()); ?> --EXPECTF-- ===Array=== int(3) zero=>0 int(3) one=>1 int(3) two=>2 int(3) int(3) ===Object=== Deprecated: ArrayIterator::__construct(): Using an object as a backing array for ArrayIterator is deprecated, as it allows violating class constraints and invariants in %s on line %d int(3) zero=>0 int(3) one=>1 int(3) two=>2 int(3) int(3)