note 87625 added to function.define

From: Date: Sat, 13 Dec 2008 10:59:18 +0000
Subject: note 87625 added to function.define
Groups: php.notes 
Request: Send a blank email to php-notes+get-148116@lists.php.net to get a copy of this message
I'm running PHP Version 5.2.5 under Linux. And I just found out about something puzzling with the define() statement. Comparing a defined constant with an int always returns true. Here is the example code: define('myDefinedName', 'stephane'); $myConstantName = myDefinedName; //$name = "0"; // Behaves as expected $name = 0; // Behaves contrary to expectation print("<br>myConstantName $myConstantName"); print("<br>name $name"); if ($name == myDefinedName) { print("<br>My name $name is (but should not be) equal to my defined name " . myDefinedName); } if ($name == $myConstantName) { print("<br>My name $name is (but should not be) equal to my constant name " . myConstantName); } ---- Server IP: 62.73.196.231 Probable Submitter: 84.208.116.162 ---- Manual Page -- http://www.php.net/manual/en/function.define.php Edit -- https://master.php.net/note/edit/87625 Del: integrated -- https://master.php.net/note/delete/87625/integrated Del: useless -- https://master.php.net/note/delete/87625/useless Del: bad code -- https://master.php.net/note/delete/87625/bad+code Del: spam -- https://master.php.net/note/delete/87625/spam Del: non-english -- https://master.php.net/note/delete/87625/non-english Del: in docs -- https://master.php.net/note/delete/87625/in+docs Del: other reasons-- https://master.php.net/note/delete/87625 Reject -- https://master.php.net/note/reject/87625 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#148116) next »