From: [EMAIL PROTECTED] Operating system: Win2k PHP version: 4.0.6 PHP Bug Type: Variables related Bug description: Undeclared variables and isset()
SYSTEM: I use PHP 4.0.6 on Win2k pro with Apache 1.3.22 win Loaded modules don't seem to make a difference for the described behaviour. DESCRIPION: Let's say we have a PHP script, the retrieves some variables via HTTP post or get. And the variables, passed to the script, have different names each time. Usually we would use "isset($variable)" to check if it exists. In most cases we need to check the content of the variable too. So it would be nice to do that in one step. The script of the following examples retrieved $var1 or $var or both of them via HTTP. EXAMPLE 1: // This would be the usual way i guess if(isset($var1)){ ... } if(isset($var2)){ ... } EXAMPLE 2: // This has been possible with PHP 3.xx - 4.0.5 // without previously checking for existence // of $var1/$var2 if($var1 == "something"){ ... } if($var2 == "anything"){ ... } EXAMPLE 3: // With PHP 4.0.6 we would have to do this: if(!isset($var1)){ // is NOT declared? $var1 = ""; } if(!isset($var2)){ // is NOT declared? $var2 = ""; } // first we had to declare them, now we can use them if($var1 == "something"){ ... } if($var2 == "anything"){ ... } I wonder if this new behaviour is a bug or a feature? Or why can't I find info about it in the changes list if it's a feature? Please send your answer to: [EMAIL PROTECTED] Thank you! Volker Puttrich -- Edit bug report at: http://bugs.php.net/?id=14296&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]