Edit report at http://bugs.php.net/bug.php?id=51791&edit=1
ID: 51791
User updated by: iliavlad at mail dot ru
Reported by: iliavlad at mail dot ru
Summary: constant() failed to check undefined constant and php
interpreter stoped
Status: Bogus
Type: Bug
Package: Reproducible crash
Operating System: Windows, Linux
PHP Version: 5.3.2
New Comment:
Hi Mike,
according to manual http://php.net/manual/en/function.constant.php
constant() eturns the value of the constant, or NULL if the constant is
not defined. And this happens with php 5.2 version. With php 5.3 there
is a fatal error and php interpreter stops. There are no words about
fatal error in manual.
Previous Comments:
------------------------------------------------------------------------
[2010-05-12 08:16:15] [email protected]
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php
------------------------------------------------------------------------
[2010-05-11 12:12:45] iliavlad at mail dot ru
Description:
------------
constant() failed to check undefined constant and php interpreter
stoped, but constant() should return NULL and php interpreter should
continue to work.
Test script:
---------------
class A
{
const B = 1;
}
var_dump(constant('A::B1'));
echo 5;
Expected result:
----------------
Warning: constant(): Couldn't find constant A::B1
NULL
5
Actual result:
--------------
>php -v
PHP 5.3.2 (cli) (built: Mar 3 2010 19:40:13)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
>php -r "class A { const B = 1;} var_dump(@constant('A::B1')); echo 5;"
>php -r "class A { const B = 1;} var_dump(constant('A::B1')); echo 5;"
Fatal error: Undefined class constant 'A::B1' in Command line code on
line 1
Call Stack:
0.0003 317608 1. {main}() Command line code:0
0.0003 317688 2. constant() Command line code:1
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=51791&edit=1