PHP ftp_chdir - 不能掩盖错误

问题描述:

我有以下功能检查具体产品目录或文件:PHP ftp_chdir - 不能掩盖错误

private function isDir($dir) 
{ 
    if (@ftp_chdir($this->connected, $dir) === true) 
    { 
     ftp_chdir($this->connected, '..'); 
     return true; 
    } 
    else 
    { 
     return false; 
    } 
} 

它可以检测正常,但即使我把@错误之前,我总是得到同样的错误:

WARNING: [2] - ftp_chdir() [function.ftp-chdir]: CWD failed. "/someDIR/someFile.xls": directory not found. in file: D:\www\testiranje\epg\classes\ftpClass.php - line 147 

我知道错误是超过预期,但是这是我想通了检测,如果一些产品目录或不是最好的办法...

感谢您的帮助!

+0

为什么不使用is_dir功能HTTP ://php.net/manual/en/function.is-dir.php – 2011-06-15 10:07:02

+1

不知道如何检查远程FTP上的目录是否是?可能吗? – 2011-06-15 10:08:59

+0

看看http://*.com/questions/1554346/how-to-check-using-php-ftp-functionality-if-folder-exists-on-server-or-not – 2011-06-15 10:10:54

使用is_dir喜欢:

is_dir('ftp://user:[email protected]/some/dir/path'); 
+0

这是一个解决方案,但它需要打开一个新的连接 – jami 2015-02-12 16:12:58

我认为它可以suppresed,在代码中使用此 - 之前的发言,即issuses的警告

error_reporting(E_ERROR); 
+0

是的,他们可以被压制,但它真的有用吗?警告是在代码中发现错误的很好的信息源,我认为你的代码不应该产生任何警告。 – CSchulz 2011-06-15 11:00:11

+0

我只是想激励。 – Mike 2011-06-15 11:45:20

+0

此外,我希望你没有任何选项来显示在生产系统中设置的错误。 – CSchulz 2011-06-16 16:40:53