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/closure_059.phpt |
--TEST-- Closure 059: Closure type hinting --FILE-- <?php class A { } class B { } $a = new A; $b = new B; $f = function (A $a){}; $f($a); $f->__invoke($a); call_user_func(array($f,"__invoke"), $a); try { $f($b); } catch (Error $e) { echo "Exception: " . $e->getMessage() . "\n"; } try { $f->__invoke($b); } catch (Error $e) { echo "Exception: " . $e->getMessage() . "\n"; } try { call_user_func(array($f,"__invoke"), $b); } catch (Error $e) { echo "Exception: " . $e->getMessage() . "\n"; } --EXPECTF-- Exception: Argument 1 passed to {closure}() must be an instance of A, instance of B %s Exception: Argument 1 passed to {closure}() must be an instance of A, instance of B %s Exception: Argument 1 passed to {closure}() must be an instance of A, instance of B %sy~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`