ID: 16830 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Analyzed Bug Type: Filesystem function related Operating System: ANY PHP Version: 4.3.0-dev New Comment:
I added following test case (ext/standard/tests/file/003.phpt) <?php $filename=""; $bb = is_file($filename); var_dump($bb); $aa = file_exists($filename); var_dump($aa); $filename="php.ini-dist"; $bb = is_file($filename); var_dump($bb); $aa = file_exists($filename); var_dump($aa); ?> Result: [yohgaki@dev HEAD]$ cat ext/standard/tests/file/003.out bool(false) bool(false) int(1) bool(true) Previous Comments: ------------------------------------------------------------------------ [2002-04-27 19:57:58] [EMAIL PROTECTED] Just curious, is this fixed? (I was about to commit test case for this bug) [yohgaki@dev HEAD]$ ./cli-php ext/standard/tests/file/003.inc bool(false) bool(false) ------------------------------------------------------------------------ [2002-04-27 13:09:43] [EMAIL PROTECTED] Jani, the var_dump()s IMO show two bugs: the other is that is_file() returned int(0), while it's documented to be a bool type. could you check this too? ------------------------------------------------------------------------ [2002-04-27 10:41:44] [EMAIL PROTECTED] Duh. You're right, it's a bug. <?php $filename=""; $bb = is_file($filename); var_dump($bb); $aa = file_exists($filename); var_dump($aa); ?> Outputs: int(0) bool(true) --Jani ------------------------------------------------------------------------ [2002-04-27 00:27:58] [EMAIL PROTECTED] c:\winnt\system32\php4ts.dll matches the php4ts.dll from the php 4.2.0 package. All other PHP files are in php's own directory. When I install a new version of PHP, I always delete the whole old PHP directory and create a new one to prevent keeping rests from old versions. I also always use the new php.ini-dist and modify it again instead of keeping the old php.ini. Additionally, in the last PHP version I had installed (4.1.2), file_exists() DID work! It just stopped working with PHP 4.2.0, so I doubt that error could be from forgetting to overwrite old DLLs with new ones. What does the script I posted before say for _you_, Jani? ------------------------------------------------------------------------ [2002-04-26 22:11:06] [EMAIL PROTECTED] Just in case..are you absolutely sure you have updated all dlls related to PHP in your system? (I assume you had some older PHP there before) e.g. php4ts.dll is quite important to be new. Try searching your filesystem for it. You might have many of them there. --Jani ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/16830 -- Edit this bug report at http://bugs.php.net/?id=16830&edit=1