PHP检查文件是否存在而不是目录

PHP检查文件是否存在而不是目录,php,Php,我读取了文件\u exists()如果指向目录,也可以返回turn。检查是否只有文件存在的最快方法是什么 目前我有: /** * Check if the file exists. * * @return bool */ public function exists() { if(is_null($this->_file)) return false; return (!is_dir($this->_file) && file_exists(

我读取了
文件\u exists()
如果指向目录,也可以返回turn。检查是否只有文件存在的最快方法是什么

目前我有:

/**
 * Check if the file exists.
 *
 * @return bool
 */
public function exists() {
    if(is_null($this->_file)) return false;

    return (!is_dir($this->_file) && file_exists($this->_file)) ? true : false;
}
我发现了很多关于检查PHP中是否存在文件的帖子,但是没有提到目录以及如何最好地检查这个

这个方法可以调用1000秒的时间,所以我可以尽可能快地完成

您正在寻找函数:

public function exists() {
    return $this->_file !== null && is_file($this->_file);
}

您只能在文件中尝试此操作。这是一个您将调用的自定义函数,而不是
file\u

 function custom_file_exists($filePath)
    {
          if((is_file($filePath))&&(file_exists($filePath))){
            return true;
          }   
          return false;
    }

对于指向文件的符号链接,您应该得到什么结果?从文档中可以看出:“注意:由于PHP的整数类型是有符号的,并且许多平台使用32位整数,因此对于大于2GB的文件,某些文件系统函数可能会返回意外的结果。”这有什么需要担心的吗?99%的情况下,除非日志文件失控,否则任何文件都不会达到这样的大小。这也让我不想使用is_file@John,很难说。有些可能会返回意外的结果。。。我没有遇到过这样的问题。第二个问题是非常荒谬的,因为这对所有函数中的所有相对路径都是一样的。这就是您通常希望避免使用相对路径的原因。
 function custom_file_exists($filePath)
    {
          if((is_file($filePath))&&(file_exists($filePath))){
            return true;
          }   
          return false;
    }