美图秀秀web开放平台--PHP流式上传和表单上传示例分享
2023-06-13 09:15:31 时间
废话少说,直接上代码:
<?php /** *Note:foroctet-streamupload *这个是流式上传PHP文件 *Pleasebeamendedaccordinglybasedontheactualsituation */ $post_input="php://input"; $save_path=dirname(__FILE__); $postdata=file_get_contents($post_input); if(isset($postdata)&&strlen($postdata)>0){ $filename=$save_path."/".uniqid().".jpg"; $handle=fopen($filename,"w+"); fwrite($handle,$postdata); fclose($handle); if(is_file($filename)){ echo"Imagedatasavesuccessed,file:".$filename; exit(); }else{ die("Imageuploaderror!"); } }else{ die("Imagedatanotdetected!"); }
<?php /** *Note:formultipart/form-dataupload *这个是标准表单上传PHP文件 *Pleasebeamendedaccordinglybasedontheactualsituation */ if(!$_FILES["Filedata"]){ die("Imagedatanotdetected!"); } if($_FILES["Filedata"]["error"]>0){ switch($_FILES["Filedata"]["error"]){ case1: $error_log="ThefileisbiggerthanthisPHPinstallationallows"; break; case2: $error_log="Thefileisbiggerthanthisformallows"; break; case3: $error_log="Onlypartofthefilewasuploaded"; break; case4: $error_log="Nofilewasuploaded"; break; default: break; } die("uploaderror:".$error_log); }else{ $img_data=$_FILES["Filedata"]["tmp_name"]; $size=getimagesize($img_data); $file_type=$size["mime"]; if(!in_array($file_type,array("image/jpg","image/jpeg","image/pjpeg","image/png","image/gif"))){ $error_log="onlyallowjpg,png,gif"; die("uploaderror:".$error_log); } switch($file_type){ case"image/jpg": case"image/jpeg": case"image/pjpeg": $extension="jpg"; break; case"image/png": $extension="png"; break; case"image/gif": $extension="gif"; break; } } if(!is_file($img_data)){ die("Imageuploaderror!"); } //图片保存路径,默认保存在该代码所在目录(可根据实际需求修改保存路径) $save_path=dirname(__FILE__); $uinqid=uniqid(); $filename=$save_path."/".$uinqid.".".$extension; $result=move_uploaded_file($img_data,$filename); if(!$result||!is_file($filename)){ die("Imageuploaderror!"); } echo"Imagedatasavesuccessed,file:".$filename; exit();
备注:美图秀秀提供两个上传接口供测试
一个是octet-stream方式上传,地址为:http://imgkaka.meitu.com/xiuxiu_web_pic_save.php
另一个是multipart/form-data方式上传,地址为:http://web.upload.meitu.com/image_upload.php
表单名称为"upload_file"。
相关文章
- Apache和PHP结合
- zencart和php是什么,什么是ZenCart ZenCart有什么特点 ZenCart模板
- [PHP] PHP的脚本执行详解编程语言
- PHP与Redis实现高性能并发处理(phpredis并发)
- 安装安装Linux下的64位PHP(linux64位php)
- 重新启动:在Linux下恢复PHP服务(linux重启php服务)
- myadmin如何快速熟悉MySQL:使用phpMyAdmin配置(mysql配置php)
- 简单易学,PHP与MySQL开发初窥门径(php与mysql开发)
- PHP与Redis出色的结合(php连redis)
- 实现缓存PHP开启Redis超越缓存技术(php开启redis)
- Linux下部署PHP网站的指南(linux部署php网站)
- PHP添加MySQL扩展:快速实现数据库连接(php添加mysql扩展)
- 构建LAMP环境 以增加PHP的MSSQL扩展(增加php扩展mssql)
- PHP编程不可或缺的利器 MySQL数据库管理使用指南(mysql的php编程)
- PHP如何操作MSSQL数据库(php怎样使用mssql)
- PHP与MSSQL搭配实现高效多用户并发访问(php mssql并发)
- 抢到手软秒杀PHP使用Redis进行流量管理(秒杀php用redis)
- 用PHP和MYSQL建立计数器过程详解
- 用PHP连接OracleforNT远程数据库
- PHP类中Static方法效率测试代码
- php入门学习知识点三PHP上传
- PHP文件上传后缀名与文件类型对照表整理
- 有关PHP中MVC的开发经验分享
- php数据结构与算法(PHP描述)查找与二分法查找
- php批量上传的实现代码
- php另类上传图片的方法(PHP用Socket上传图片)
- php输出1000以内质数(素数)示例
- php+jsiframe实现上传头像界面无跳转
- PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
- PHP实现获取图片颜色值的方法