php怎样实现http文件上传功能
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,本篇内容介绍了"php怎样实现http文件上传功能"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本文
千家信息网最后更新 2025年11月08日php怎样实现http文件上传功能
本篇内容介绍了"php怎样实现http文件上传功能"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
php http文件上传如何实现?
PHP 利用CURL(HTTP)实现服务器上传文件至另一服务器
代码如下:
// 上传端 /** * 向目标地址推送xls文件 * @Date 2019/4/29 */ public function putXls() { // 目标接口 $url = "http://xxx"; // 初始化 cURL 会话, 如果提供url,CURLOPT_URL 选项将会被设置成这个值 $ch = curl_init($url); // 获取CURLFile实例 $xlsCurlFile = $this->makeCurlFile(base_path()."/public/tby.xls"); $data = array('xls' => $xlsCurlFile); // TRUE 时会发送 POST 请求,类型为:application/x-www-form-urlencoded,是 HTML 表单提交时最常见的一种。 curl_setopt($ch, CURLOPT_POST, 1); // 从 PHP 5.5.0 开始, @ 前缀已被废弃,文件可通过 CURLFile 发送。 设置 CURLOPT_SAFE_UPLOAD 为 TRUE 可禁用 @ 前缀发送文件,以增加安全性。 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); // 执行给定的 cURL 会话 // 成功时返回 TRUE, 或者在失败时返回 FALSE。 然而,如果 设置了 CURLOPT_RETURNTRANSFER 选项,函数执行成功时会返回执行的结果,失败时返回 FALSE 。 $result = curl_exec($ch); if (curl_errno($ch)) {// 返回错误代码或在没有错误发生时返回 0 (零)。 // 返回错误信息,或者如果没有任何错误发生就返回 '' (空字符串)。 $result = curl_error($ch); } // 关闭 cURL 会话 curl_close($ch); } /** * 根据文件路径获取一个CURLFile类实例 * @param string $file 文件路径 * @return CURLFile * @Date 2019/4/29 */ private function makeCurlFile(string $file) { /** * .xls mime为 application/vnd.ms-excel * .xlsx mime为 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet * 可参考 https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types * * 注意:也可以使用 finfo类动态获取,但需要装fileinfo扩展 * demo: $result = new finfo(); if (is_resource($result) === true) { return $result->file($filename, FILEINFO_MIME_TYPE); } return false; */ $mime = "application/vnd.ms-excel"; $info = pathinfo($file); $name = $info['basename']; $output = new CURLFile($file, $mime, $name); return $output; }// 接收端public function getFile(){ // 保存的文件夹,需要注意所在用户组是否有写入权限 $uploads_dir = base_path()."/public/test"; $xlsFiles = $_FILES["xls"] ?? null; if($xlsFiles){ if ($xlsFiles["error"] == UPLOAD_ERR_OK) { $tmp_name = $xlsFiles["tmp_name"]; $name = $xlsFiles["name"]; move_uploaded_file($tmp_name, "$uploads_dir/$name"); } // todo success }else{ // todo fail }}"php怎样实现http文件上传功能"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
文件
错误
功能
成功
代码
内容
前缀
实例
更多
服务器
目标
知识
路径
服务
实用
安全
学有所成
接下来
函数
动态
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库中in的使用
增城正规的app软件开发
学软件开发需要多长时间
自建人脸识别数据库
方舟进化生存怎么开私人服务器
如何建立园区安全生产人员数据库
华为ntp服务器
数据库数据安全监控
国家电网公司网络安全责任
pubg国际服数据库在哪
方舟服务器没有存档文件夹
日志服务器作用
工控软件开发 合肥
网络安全专业考二建
新加坡软件开发怎么样
十八大以来网络安全工作报告
网络安全监督检查自查表怎么填
网络安全手抄报不简单的
中国空间站网络技术
罗宾森数据库
公安部网络安全边界
存储数据库所有对象
网络安全产业发展现状
博雅数据库天津师范大学
日月互联网络科技
河北朗德软件开发有限公司
关于网络安全的两会问题
乐亭县网络安全培训会议
数据库限制日志文件
服务器 web 签章