mirror of
https://github.com/php/php-src.git
synced 2026-03-24 16:22:37 +01:00
50 lines
1.5 KiB
PHP
50 lines
1.5 KiB
PHP
--TEST--
|
|
SPL: ArrayObject with bad iterator class.
|
|
--FILE--
|
|
<?php
|
|
try {
|
|
$ao = new ArrayObject(array('a'=>1,'b'=>2,'c'=>3));
|
|
$ao->setIteratorClass("nonExistentClass");
|
|
foreach($ao as $key=>$value) {
|
|
echo " $key=>$value\n";
|
|
}
|
|
} catch (TypeError $e) {
|
|
var_dump($e->getMessage());
|
|
}
|
|
|
|
try {
|
|
$ao = new ArrayObject(array('a'=>1,'b'=>2,'c'=>3));
|
|
$ao->setIteratorClass("stdClass");
|
|
foreach($ao as $key=>$value) {
|
|
echo " $key=>$value\n";
|
|
}
|
|
} catch (TypeError $e) {
|
|
var_dump($e->getMessage());
|
|
}
|
|
|
|
|
|
try {
|
|
$ao = new ArrayObject(array('a'=>1,'b'=>2,'c'=>3), 0, "nonExistentClass");
|
|
foreach($ao as $key=>$value) {
|
|
echo " $key=>$value\n";
|
|
}
|
|
} catch (TypeError $e) {
|
|
var_dump($e->getMessage());
|
|
}
|
|
|
|
try {
|
|
$ao = new ArrayObject(array('a'=>1,'b'=>2,'c'=>3), 0, "stdClass");
|
|
foreach($ao as $key=>$value) {
|
|
echo " $key=>$value\n";
|
|
}
|
|
} catch (TypeError $e) {
|
|
var_dump($e->getMessage());
|
|
}
|
|
|
|
?>
|
|
--EXPECT--
|
|
string(128) "ArrayObject::setIteratorClass(): Argument #1 ($iteratorClass) must be a class name derived from Iterator, nonExistentClass given"
|
|
string(120) "ArrayObject::setIteratorClass(): Argument #1 ($iteratorClass) must be a class name derived from Iterator, stdClass given"
|
|
string(124) "ArrayObject::__construct(): Argument #3 ($iterator_class) must be a class name derived from Iterator, nonExistentClass given"
|
|
string(116) "ArrayObject::__construct(): Argument #3 ($iterator_class) must be a class name derived from Iterator, stdClass given"
|