写个新的控制器来让用户下载,而不是直接用过文件路径下载。 比如:
/index.php?controller=down_file&file=1.zip
然后在Controller里控制输出名就可以实现
$file = './路径/1.zip'filename = '2.zip'
header('Content-Description: File Transfer')
header('Content-Type: application/octet-stream')
header("Content-type:text/htmlcharset=utf-8")
header('Content-Disposition: attachment filename='. $filename)
header('Content-Transfer-Encoding: binary')
header('Expires: 0')
header('Cache-Control: must-revalidate, post-check=0, pre-check=0')
header('Pragma: public')
readfile($file)
exit
<?//输出的类型
header('Content-type: application/octet-stream')
//输出文件的大小
header('Accept-Length: '.filesize('0.rar'))
//下载显示的名字
header('Content-Disposition: attachmentfilename="'.$_GET['id'].'.rar"')
//输出文件数据
print file_get_contents('0.rar')
?>
方法如下:我重命名的规则是把所有有空格的全部替换成“_”,然后再后面加一个"_s"。<?php
$paths = "C://Documents and Settings//sk//Desktop//s//"
$d = dir($paths)
while (false !== ($entry = $d->read())) {
$table_change = array(' '=>'_')
$newName = strtr($entry,$table_change)
$newName = substr($newName, 0,-4)
rename($paths.$entry, $paths.$newName."_s.jpg")
}
$d->close()
echo "done"
?>
以上就是php如何批量修改某个文件夹下所有文件名的方法
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)