Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP说文件不存在时,它不存在_Php_File - Fatal编程技术网

PHP说文件不存在时,它不存在

PHP说文件不存在时,它不存在,php,file,Php,File,我现在很迷路。此文档的文件路径是正确的,并且位于echo打印的目录中,但它始终显示“未找到文件” 非常愚蠢的错误,尝试下载一个不同的文件,它的工作。然后我意识到文件名是driver.txt。所以PHP在寻找driver.txt.txt。我感谢所有的帮助。非常愚蠢的错误,尝试下载不同的文件,结果成功了。然后我意识到文件名是driver.txt。所以PHP在寻找driver.txt.txt。非常感谢您的帮助。为什么您要声明/分配一个变量到一个文件中,然后将其包含在第二行?我也不知道您为什么要使用二进

我现在很迷路。此文档的文件路径是正确的,并且位于echo打印的目录中,但它始终显示“未找到文件”


非常愚蠢的错误,尝试下载一个不同的文件,它的工作。然后我意识到文件名是driver.txt。所以PHP在寻找driver.txt.txt。我感谢所有的帮助。

非常愚蠢的错误,尝试下载不同的文件,结果成功了。然后我意识到文件名是driver.txt。所以PHP在寻找driver.txt.txt。非常感谢您的帮助。

为什么您要声明/分配一个变量到一个文件中,然后将其包含在第二行?我也不知道您为什么要使用二进制/ZIP作为文本文件。@FunkFortyner我只是在尝试不同的方法使其工作,但当我停止使用该变量时,我忘了删除它。请看下面的例子手册上也有。显然有些东西可能被忽略了。如果您硬编码文件路径+名称,会发生什么?文件_存在('/var/www/html/../driver.txt'))这个字符串与使用DOCUMENT_ROOT得到的字符串相比如何?为什么要声明/分配一个变量到一个文件中,然后在第二行包含它?我也不知道为什么要使用二进制/ZIP作为文本文件。@FunkFortyNiner我只是在尝试不同的方法使它工作,但我忘了删除那个变量当我停止使用它的时候,请把手册也看一遍。显然有些东西可能被忽略了。如果您硬编码文件路径+名称,会发生什么?文件“”存在('/var/www/html/../driver.txt')该字符串与使用文档“”根目录获得的字符串相比如何?
$fileName = 'driver.txt';
$filePath = $_SERVER['DOCUMENT_ROOT']."/driver.txt";
echo $filePath;
if(!file_exists($filePath)){ // file does not exist
    die('file not found');
} else {
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename=$fileName");
    header("Content-Type: application/zip");
    header("Content-Transfer-Encoding: binary");

    // read the file from disk
    readfile($filePath);
}