Article:
  Working with Files in PHP, Part 3
Subject:   line !== 'false'
Date:   2003-03-12 16:39:03
From:   johncogg
Response to: line !== 'false'

Although this behavior may work (not using the 'identical' comparison and just using a standard comparison) it is not to be relied on. For instance:


$myfile = "0"; // a filename whose name is '0'
if($myfile == false) {
echo "$myfile is false\n";
} else {
echo "$myfile is true.\n";
}


In this case, the string '0' will be evaluated as an integer value '0' which is in turn a boolean false. In order for this to behave properly you'd need to use the identical comparison === operator.


John

Main Topics Oldest First

Showing messages 1 through 1 of 1.

  • line !== 'false'
    2005-03-17 10:11:01  Cerro [View]

    I was looking for some code to list the directory content with PHP3. The problem that i had was that i had a subdirectory named 0. Since in PHP3 there is no !== operator i did like this:

    function ListDir($dir)
    {
    if ((file_exists($dir)) && ($dh = opendir($dir)))
    {
    while (($file = readdir($dh)) || (((string) $file == "0") || ($file != false)))
    echo($file);
    closedir($dh);
    }
    }

    In this case the problem directory name is "0" but you can add "false" to the condition.