PHP自带move_uploaded_file()函数就可以使用我们简单的文件上传

优采云 发布时间: 2021-06-25 18:07

  PHP自带move_uploaded_file()函数就可以使用我们简单的文件上传

  如何使用PHP上传和下载素材和图片?很多新手对此都不是很清楚。为了帮助大家解决这个问题,下面小编就为大家详细讲解一下。有这方面需求的可以过来学习。希望你能有所收获。

  上传

  上传非常简单。 PHP自带的move_uploaded_file()函数可以使用我们简单的文件上传。

  我们只需要在数据库中保存文件的路径供我们下载或显示即可。

  这里需要注意上传路径和文件名尽量不要收录中文。

  下载

  下载文件,我们需要临时生成一个服务器的zip包,然后设置请求头,最后删除服务器生成的临时zip包就OK了。直接上传以下代码:

  $filename = rand(0, 999).'.zip';

$zip = new ZipArchive();

/*

* $zip->open 这个方法的第一参数是要处理的文件名

* 第二个表示处理模式。

* ZipArchive::CREATE,系统会往原来的zip 文件内追加内容

* ZipArchive::OVERWRITE 是防止系统多次添加同一个文件到 zip 中

*/

$zip->open($filename, ZipArchive::CREATE | ZipArchive::OVERWRITE);

// 添加文件内容到zip 文档

$zip->addFromString(/*文件名称*/, /*文件内容*/);

// 设置请求头,下载压缩包,并且删除服务器上的临时 zip 文件

Header("Content-type: application/octet-stream");

Header("Accept-Ranges: bytes");

Header("Accept-length: ".$filename); // 后面要拼接你的zip 文件名

Header("Content-Disposition: attachment; filename=images.zip"); // 这里的 filename 是你要下载的 zip 包的名称

// 一次只传输1024个字节的数据给客户端

$buffer = 1024;

while(!feof($file)) {

 // 将文件读入内存

 $file_data = fread($file, $buffer);

 // 每次向客户端回送1024个字节

 echo $file_data;

}

fclose($file);

unlink($filename); // 删除文件

exit;

  php 是什么语言?

  php,嵌套的缩写名称,是英文Hypertext Preprocessor(PHP:Hypertext Preprocessor)的缩写。 PHP 是一种 HTML 嵌入式语言。 PHP 与微软的 ASP 非常相似。它是一种在服务器端执行并嵌入在 HTML 文档中的脚本语言。语言风格类似于C语言。现在被很多网站程序员广泛使用。

  阅读以上内容对您有帮助吗?如果您想了解更多相关知识或阅读更多相关文章,请关注易速云行业资讯频道,感谢您对易速云的支持。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线