Edit report at https://bugs.php.net/bug.php?id=65557&edit=1

 ID:                 65557
 Comment by:         Laurent dot Lyaudet at gmail dot com
 Reported by:        Laurent dot Lyaudet at gmail dot com
 Summary:            Constants from Core are not defined with inline
                     scripts
 Status:             Open
 Type:               Bug
 Package:            CGI/CLI related
 Operating System:   Debian Linux
 PHP Version:        5.4.19
 Block user comment: N
 Private report:     N

 New Comment:

Additionally I noted that 
#echo '<?php fwrite(STDERR, "stderr\n"); ?>' > test
#php test
works.

Is is somehow surprising since I would have thought that the only difference 
between "php test" and "php <?php fwrite(STDERR, "stderr\n"); ?>" was the input 
stream for php code.


Previous Comments:
------------------------------------------------------------------------
[2013-08-26 08:49:43] Laurent dot Lyaudet at gmail dot com

Description:
------------
Hi,

I found a bug affecting PHP 5.3.3-7+squeeze15 and PHP 5.4.4-14+deb7u3 (cli) 
(latest debian package for current stable).
The constant STDERR is not defined for inline scripts. 
I mean it isn't defined when you type #php and then you type <?php 
myscriptcontent ?>, Ctrl+D.
But it works if you use php -r 'myscriptcontent'.
I join test script below.

I didn't tested it but I assume it is not specifically STDERR which is impacted.
It is probably the same for all Core constants.

Best regards,
   Laurent Lyaudet

Test script:
---------------
php -r 'fwrite(STDERR, "stderr\n");'

works but

root@wheezyDEVLaurent:~# php
<?php
fwrite(STDERR, "stderr\n");
?>

doesn't.

Expected result:
----------------
stderr

Actual result:
--------------
PHP Notice:  Use of undefined constant STDERR - assumed 'STDERR' in - on line 3
PHP Stack trace:
PHP   1. {main}() -:0

Notice: Use of undefined constant STDERR - assumed 'STDERR' in - on line 3

Call Stack:
   10.9477     215280   1. {main}() -:0

PHP Warning:  fwrite() expects parameter 1 to be resource, string given in - on 
line 3
PHP Stack trace:
PHP   1. {main}() -:0
PHP   2. fwrite() -:3

Warning: fwrite() expects parameter 1 to be resource, string given in - on line 
3

Call Stack:
   10.9477     215280   1. {main}() -:0
   10.9479     216048   2. fwrite() -:3




------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=65557&edit=1

Reply via email to