note 68935 added to function.defined
| From: | Pirman at osu1 dot php dot net | Date: | Wed, 16 Aug 2006 15:28:06 +0000 |
| Subject: | note 68935 added to function.defined | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-115976@lists.php.net to get a copy of this message | ||
I am not sure if this is an intended behavior but after some testing with php5.1.4, I observed the
following behavior:
I realized that If you write defined('MYCONSTANT') everything will work as described
above. If you write defined(MYCONSTANT) this seems only to be true if MYCONSTANT is defined AND some
constant is defined twice (could be the constant MYCONSTANT itself or any other constant)
This script shows what I have described:
<?
echo "<br>define myconstant";
define(MYCONSTANT, TRUE);
echo "<br>My Constant is:".MYCONSTANT;
echo "<br>Result of defined(MYCONSTANT)?:". defined(MYCONSTANT);
echo "<br>Result of defined('MYCONSTANT')?:".
defined('MYCONSTANT');
echo "<br><br> define some other constant";
define(OTHERCONSTANT, TRUE);
echo "<br>My Constant is:".MYCONSTANT;
echo "<br>Result of defined(MYCONSTANT)?:". defined(MYCONSTANT);
echo "<br>Result of defined('MYCONSTANT')?:".
defined('MYCONSTANT');
echo "<br><br> double define some other constant";
define(OTHERCONSTANT, TRUE);
echo "<br>My Constant is:".MYCONSTANT;
echo "<br>Result of defined(MYCONSTANT)?:". defined(MYCONSTANT);
echo "<br>Result of defined('MYCONSTANT')?:".
defined('MYCONSTANT');
?>
As a Result I get:
define myconstant
My Constant is:1
Result of defined(MYCONSTANT)?:
Result of defined('MYCONSTANT')?:1
define some other constant
My Constant is:1
Result of defined(MYCONSTANT)?:
Result of defined('MYCONSTANT')?:1
double define some other constant
My Constant is:1
Result of defined(MYCONSTANT)?:1
Result of defined('MYCONSTANT')?:1
----
Server IP: 192.35.244.50
Probable Submitter: 212.183.52.31
----
X-Spam-Status: No, hits=4.0 required=5.0 tests=DATE_MISSING,FROM_NO_LOWER,
HTML_MESSAGE,UPPERCASE_25_50 autolearn=no version=2.64
----
Manual Page -- http://www.php.net/manual/en/function.defined.php
Edit -- https://master.php.net/note/edit/68935
Del: integrated -- https://master.php.net/note/delete/68935/integrated
Del: useless -- https://master.php.net/note/delete/68935/useless
Del: bad code -- https://master.php.net/note/delete/68935/bad+code
Del: spam -- https://master.php.net/note/delete/68935/spam
Del: non-english -- https://master.php.net/note/delete/68935/non-english
Del: in docs -- https://master.php.net/note/delete/68935/in+docs
Del: other reasons-- https://master.php.net/note/delete/68935
Reject -- https://master.php.net/note/reject/68935
Search -- https://master.php.net/manage/user-notes.php