ID:               31377
 User updated by:  intro at intro dot one dot pl
 Reported By:      intro at intro dot one dot pl
 Status:           Open
 Bug Type:         Directory function related
 Operating System: linux
 PHP Version:      5.0.3
 New Comment:

Hmmmm i've done something else. Function filetype. And after use
filetype on some folder i have many warnings that "Lstat failed for
file". And the same way i think works "is_dir". Only a few files and
folders are with no this warning and is showing as dir or file etc. The
same is on other functions as is_file etc. My last code in tests:

<?php

$directorytoread = "/home"
$files=scandir($directorytoread);
$listdirindir = array();

// var_dump($files);
// all files are listing which is in folder /home

foreach ($files as $file)
{
  if ( filetype($file) == "dir" )
  echo "File \"$file\" is dir and ";
  if (is_dir($file))
  {
    array_push($listdirindir,$file);
    echo "dir \"$file\" added<br/>";
  }
}
print_r($listdirindir);

?>

...and my examples result is:

many of warnings +
File "." is dir and dir "." added
File ".." is dir and dir ".." added
+ many of warnings +
File "c" is dir and dir "c" added
+ many of warnings +
Array ( [0] => . [1] => .. [2] => c )


Previous Comments:
------------------------------------------------------------------------

[2005-01-02 12:14:33] intro at intro dot one dot pl

by "var_dump($files);" after scandir everything are listing good.
Permissions etc. is ok and files and folders are readable. I checked
some others dirs and sometimes files is showing as dir (for example
.directory and others hidden files).
"Please try using this CVS snapshot:" still doesn't work correctly.

------------------------------------------------------------------------

[2005-01-02 07:45:53] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5.0-win32-latest.zip

Also, add 'var_dump($files);' after the scandir() line and check the
output. (permissions..?)


------------------------------------------------------------------------

[2005-01-02 00:18:27] intro at intro dot one dot pl

Description:
------------
For example i have 4 folders in /home directory on unix platform
(a,b,c,d) and php5. The script:
I have strange thing that function is_dir not always shows every dirs
as it is dir. In my example script is_dir returned only "c" as dir and
the rest (a,b,d) as file.

Reproduce code:
---------------
<?php
$files=scandir("/home");
foreach ($files as $file)
{
        if (is_dir($file))
        {
                echo "dir: $file";
        }
}
?>

Expected result:
----------------
dir: a dir: b dir: c dir: d

Actual result:
--------------
dir: c


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=31377&edit=1

Reply via email to