php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /opt/php-7.0.1/Zend/tests/ |
files >> //opt/php-7.0.1/Zend/tests/bug26166.phpt |
--TEST-- Bug #26166 (__toString() crash when no values returned) --FILE-- <?php class Foo { function __toString() { return "Hello World!\n"; } } class Bar { private $obj; function __construct() { $this->obj = new Foo(); } function __toString() { return $this->obj->__toString(); } } $o = new Bar; echo $o; echo "===NONE===\n"; function my_error_handler($errno, $errstr, $errfile, $errline) { var_dump($errstr); } set_error_handler('my_error_handler'); class NoneTest { function __toString() { } } $o = new NoneTest; echo $o; echo "===THROW===\n"; class ErrorTest { function __toString() { throw new Exception("This is an error!"); } } $o = new ErrorTest; try { echo $o; } catch (Exception $e) { echo "Got the exception\n"; } ?> ===DONE=== --EXPECTF-- Hello World! ===NONE=== string(%d) "Method NoneTest::__toString() must return a string value" ===THROW=== Fatal error: Method ErrorTest::__toString() must not throw an exception, caught Exception: This is an error! in %sbug26166.php on line %dy~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`