Bishop Bettini <bis...@php.net> writes: > On Mon, Jun 27, 2016 at 11:31 AM, Andreas Heigl <andr...@heigl.org> wrote: > >> Am 27.06.16 um 15:28 schrieb Karl Pflästerer: >> > Andreas Heigl <andr...@heigl.org> writes: >> > >> >> Am 27.06.16 um 15:01 schrieb Karl Pflästerer: >> >>> interface I1 { const C1 = '';} >> >>> class C3 implements I1 { const C1 = 'c2';} >> >>> $c3 = new C3; >> >>> var_dump($c3::C1); >> >> >> >> According to https://3v4l.org/jIcs6 it looks like that's intended >> >> behaviour ;) >> > >> > But why does it work in the CLI if I write the code (instead of using a >> > script)? That's my question. >> >> It doesn't. At least not on my machine. This is the output I get: >> >> $ php -v >> PHP 7.1.0alpha2 (cli) (built: Jun 24 2016 13:50:28) ( NTS ) >> Copyright (c) 1997-2016 The PHP Group >> Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies >> > > Technically, this is a different version than reported. Nonetheless, on the > same version my REPL complains as well, I suspect because the original > report misspelled the INI setting ("-ddispplay_errors=On", notice the > double "p"):
[...] Thanks; that explains why I didn't see the error message. > > Under normal interpretive operation, the Fatal terminates the script. But > in the case of the REPL command line, those are swallowed up and you can > keep going. Same as like: > And that explains why I was able to instantiate a broken class (with a overriden constant). So no bug but an interesting edge case. KP -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php