basename()
返回路径中的文件名部分dirname()
- 返回路径中的目录部分pathinfo()
- 返回文件路径的全部信息
$str = 'E:\phpStudy\PHPTutorial\WWW\index.php';
echo basename($str);
//输出
index.php
$str = 'E:\phpStudy\PHPTutorial\WWW\index.php';
echo dirname($str).PHP_EOL;
//输出
E:\phpStudy\PHPTutorial\WWW
$str = 'E:\phpStudy\PHPTutorial\WWW\index.php';
print_r(pathinfo($str));
//输出
Array
(
[dirname] => E:\phpStudy\PHPTutorial\WWW
[basename] => index.php
[extension] => php
[filename] => index
)
fopen()
fclose()
fread()
fwrite()
filesize()
is_dir()
is_file()
file_exists()
mkdir()
move_uploaded_file()
readfile()输出文件
文件下载,
//第一种
$file = '1.txt';
if(file_exists($file)){
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($file).'"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
//第二种
$file = '1.txt';
if(file_exists($file)){
$fp = fopen($file, "r");//以只读的方式打开文件
$file_size = filesize($file);//获取文件大小
$file_name = basename($file);//获取文件名
//发送下载需要的https头文件
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: " . $file_size);//显示文件大小
header("Content-Disposition: attachment; filename=" . $file_name);//告知用户文件名称
echo fread($fp, $file_size);//读取输出文件
fclose($fp);//关闭文件
exit();//结束
}
function DownloadFile($file) { // $file = include path
if(file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
}