PHP原生函数做文件上传下载功能的代码是什么
Admin 2022-09-20 群英技术资讯 694 次浏览
这篇文章给大家分享的是“PHP原生函数做文件上传下载功能的代码是什么”,对大家学习和理解有一定的参考价值和帮助,有这方面学习需要的朋友,接下来就跟随小编一起学习一下吧。if ( $_FILES && $_FILES['attachment'] && $_FILES['attachment']['tmp_name']){
$filesize = $_FILES['attachment']['size'];
//文件上传大小限制:5M
if($filesize > 5*1024*1024){
exit('上传文件大小超出限制!');
}
//文件保存目录,如果不存在则创建之
$uploaddir = ROOT_DIR.'/public/attachment/notice/';
if(!file_exists($uploaddir))
mkdir($uploaddir,0755,true);
//获取上传文件扩展名
$arr_file = explode('.', basename($_FILES['attachment']['name']));
$filetype = $arr_file[count($arr_file)-1];
//获取源文件名
$attachment_name = basename($_FILES['attachment']['name']);
//对文件进行重命名以避免中文字符的影响
$fname = md5(basename($_FILES['attachment']['name']).microtime()).'.'.$filetype;
$uploadfile = $uploaddir . $fname;
if (move_uploaded_file($_FILES['attachment']['tmp_name'], $uploadfile)) {
//获取文件相对路径
$attachment = '/public/attachment/notice/'. $fname;
} else {
exit('文件上传失败!');
}
}
注:"attachment"是上传文件name,根据项目中的具体属性值修改之。本上传处理未对文件类型做限制处理,可根据具体需求自己处理之。
文件下载:
//输入文件标签 Header ( "Content-type: application/octet-stream" ); Header ( "Accept-Ranges: bytes" ); Header ( "Accept-Length: " . filesize ( $attachment_filepath ) ); Header ( "Content-Disposition: attachment; filename=" . $attachment_filename ); //输出文件内容 //读取文件内容并直接输出到浏览器 echo file_get_contents($attachment_filepath); exit ();
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
XMAPP在php中搭建环境:1、下载XMAPP后进行傻瓜式安装即可;2、启动 XMAPP control Pane,启动Apache和MySQL。如果显示Apache和两个mysql的提示,说明Apache和MySQL都已正常启动。
什么是依赖注入?本篇文章带大家了解一下PHP中的依赖注入,介绍一下依赖注入出现的原因、依赖注入的应用,希望对大家有所帮助!
在PHP中如何读写文件?在学习PHP时,读写文件是一个需要熟练掌握的知识,因此,我了让大家更好的学习和理解PHP读写文件,下面给大家介绍PHP读写文件的示例,有这方面学习需求的朋友可以看一下。
在laravel中,provider是一个应用程序的引导中心,也被称为服务提供者,是laravel程序的核心;包括应用程序在内,所有的Laravel核心服务都是通过服务提供者启动的,可以提供如身份信息服务、邮寄地址服务等。
我们要做项目开发,连接数据库是需要掌握的内容。对此,这篇文章给大家分享php下使用pdo连接数据库操作,小编觉得比较实用,感兴趣的朋友可以了解了解。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008