ID:               28907
 User updated by:  mchizewski at yahoo dot com
 Reported By:      mchizewski at yahoo dot com
-Status:           Bogus
+Status:           Open
 Bug Type:         FTP related
 Operating System: Windows 2000 SP 3
 PHP Version:      5.0.0RC3
 New Comment:

If you are going to keep the warning message, please update the
documentation for ftp_login as well.

As you said, the is_dir will work if you are NOT using the ftp
functions. My understanding is that the ftp functions are required if
you need to login to an ftp server. There is no way to remove the
warning message?  It really seems wrong to have an error when it gives
you feedback true/false.

Is there any way to get an ftp is_dir function?

I do see putting @ in front of the function does suppress the error
message.

Thank you for your help!


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

[2004-06-24 18:22:06] [EMAIL PROTECTED]

The warning message stays, I've updated the documentation to explicitly
state that the warning message will be issued.

is_dir() and is_file *do* work on ftp:// URLs in PHP5.

if (is_dir('ftp://user:[EMAIL PROTECTED]/path/to/file')) { /* The directory
exists */ }

The is_dir() method opens a new connection for reach request so if you
plan on doing multiple FS ops, then working via the ftp extension
(using ftp_chdir() to check) is probably the best way to go.

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

[2004-06-24 17:07:00] mchizewski at yahoo dot com

This is also what happens with the ftp_login function. "Returns TRUE on
success or FALSE on failure." It should not give a warning message.

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

[2004-06-24 15:05:50] mchizewski at yahoo dot com

Also please note, if this is not how it should be, the PHP Manual needs
to be updated. However, I would much rather see the warning message
removed. Unless of course there is a ftp function simular to is_file or
is_dir. Right now, I see ftp_chdir the best way of finding this out
quicky.

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

[2004-06-24 03:24:41] mchizewski at yahoo dot com

Description:
------------
When ftp_chdir cannot change directory, it produces the following PHP
warning.

Warning: ftp_chdir()[http://www.php.net/manual/en/function.ftp-chdir]:
Failed to change directory. in C:\Documents and Settings\(...)\ftp.php
on line 137

If ftp_chdir cannot change the directory, it should do as the
documentation says and just return false.

"Returns TRUE on success or FALSE on failure."


Reproduce code:
---------------
// code as part of a ftp class
function change_ftp_directory () {
        if ($this -> ftp_login === false) {
                return false;
        }
        $this -> change_ftp_directory = ftp_chdir ($this -> ftp_resource,
$this -> ftp_path);
        if ($this -> change_ftp_directory === false) {
                return false;
        }
        return true;
}

Expected result:
----------------
It returns false if the change directory path is bad. No PHP error
reported.

Actual result:
--------------
Warning: ftp_chdir()[http://www.php.net/manual/en/function.ftp-chdir]:
Failed to change directory. in C:\Documents and Settings\(...)\ftp.php
on line 137


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


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

Reply via email to