上传附件(图片base64)封装方法

时间:2021-11-28 00:43:34

上传附件(图片base64)封装方法

php
上传附件,base64

项目中封装的接口:

 public  function error($msg){
header("Content-type: application/json");
$o['time'] = "".time();
$o['code'] = '1';
$o['errorMsg'] = $msg;
echo json_encode($o);
die;
} public function Attachment(){
$d = array_merge($_POST,$_GET);
if( empty($d['attachment']) ) $this->error("附件不能为空");
//匹配出图片的格式
if (!preg_match('/^(data:\s*image\/(\w+);base64,)/', $d['attachment'], $result)) $this->error('格式错误!');
$type = $result[2];
$attachment = $d['attachment'];
$filename = date('His') . strtolower( base_convert(md5(microtime() . $_SERVER['DOCUMENT_ROOT']), 16, 10));
$imgurl = "upload/";
$imgurl = imgurl . $filename . "." . $type;
file_put_contents($imgurl, base64_decode(str_replace($result[1], '', $attachment)));
return $imgurl;
}

上传附件(图片base64)封装方法的更多相关文章

  1. form表单上传附件的几种方法

    问题描述:在网页开发过程中,当需要上传附件(图片,音频,视频等)时,常规方法是使用form表单进行提交,这里总结一下form表单提交的几种方法. 参考地址:http://www.cnblogs.com ...

  2. 循序渐进VUE+Element 前端应用开发(23)--- 基于ABP实现前后端的附件上传,图片或者附件展示管理

    在我们一般系统中,往往都会涉及到附件的处理,有时候附件是图片文件,有时候是Excel.Word等文件,一般也就是可以分为图片附件和其他附件了,图片附件可以进行裁剪管理.多个图片上传管理,及图片预览操作 ...

  3. .Net Core 图片上传FormData和Base64

    缓冲和流式传输是上传文件的两种常用方案,这里主要演示流式传输. 1.Net Core MVC Form提交方式: 前端页面 form表单提交: <form id="uploadForm ...

  4. 修改WordPress中上传附件2M大小限制的方法&sol;php&plus;iis上传附件默认大小修改方法

    在服务器上架设好WordPress后,使用过程中发现,上传附件大小有2M的限制 话说服务器就是本机,可以直接把文件拖到附件存储文件夹下,然后在需要附件的地方引用链接 可是这种落后的方法终究不是办法,还 ...

  5. 上传GIF图片方法!

    有朋友问,如何上传GIF图片,在此做一下说明.方法是:在第二栏“上传图片”栏——选择“无水印”——选择文件(找到文件)——点击上传——点击插入——我选的图片 ——上传成功了!

  6. Dynamics CRM 自定义上传附件的图片悬浮层显示

    CRM中的附件是以流的形式保存在了数据库中,这样做的一个坏处是一旦系统运行时间久,附件上传的多了势必会导致数据库极速扩大,即影响系统的运行效率也对后期的迁移维护带来了不必要的麻烦.所以很多的客户都会要 ...

  7. 小程序上传多图片多附件多视频 c&num;后端

    前言: 最近在研究微信小程序,本人自己是C#写后端的;感觉小程序挺好玩的,就自己研究了一下:刚好今天又给我需求,通过小程序上传多图 然后C#后端保存到服务器: 用NET明白 前端上传需要用到流,然后就 ...

  8. Ueditor 单独使用上传图片及上传附件方法

    1 <script type="text/plain" id="upload_ue"></script> 2 <script ty ...

  9. Ecshop商品描述上传中文名图片无法显示解决方法

    在后台上传商品图片的时候,如果你选择一个中文名称的图片,那么上传后会产生乱码,导致图片显示不出来. 下面说一种解决办法:使用"年月日时分秒 + 6个随机字符"做为文件名,如 201 ...

随机推荐

  1. SVM经典论文

    1. P. H. Chen, C. J. Lin, and B. Schölkopf, A tutorial on ν-support vector machines, Appl. Stoch. Mo ...

  2. java 验证码

    package lizikj.bigwheel.pcsystem.util;import javax.imageio.ImageIO; import java.awt.*; import java.a ...

  3. 【BZOJ-2007】海拔 最小割 (平面图转对偶图 &plus; 最短路)

    2007: [Noi2010]海拔 Time Limit: 20 Sec  Memory Limit: 552 MBSubmit: 2095  Solved: 1002[Submit][Status] ...

  4. zw版【转发&&num;183&semi;*nvp系列Delphi例程】CheckDifference1

    zw版[转发·*nvp系列Delphi例程]CheckDifference1 procedure TForm1.Button1Click(Sender: TObject);var img, img1 ...

  5. 10socket编程

    这一节主要关注的还是粘包问题,我们利用recv实现一个recv_peek函数,它的目的是偷窥目的,它是利用recv的一个msg_peek参数与read的区别,read读取后 会擦除缓冲区的内容,而re ...

  6. C&num; 第三方控件 错误 LC-1

    删掉项目下面的Properties\licenses.licx 文件

  7. crontab linux

    第1列分钟1-59第2列小时1-23(0表示子夜)第3列日1-31第4列月1-12第5列星期0-6(0表示星期天)第6列要运行的命令 下面是crontab的格式:分 时 日 月 星期 要运行的命令 这 ...

  8. cxf整合spring中出现的错误

    Caused by: java.lang.ClassNotFoundException: javax.wsdl.extensions.ElementExtensible at org.apache.c ...

  9. sql server 性能调优之 CPU消耗最大资源分析1 &lpar;自sqlserver服务启动以后&rpar;

    一. 概述 上次在介绍性能调优中讲到了I/O的开销查看及维护,这次介绍CPU的开销及维护, 在调优方面是可以从多个维度去发现问题如I/O,CPU,  内存,锁等,不管从哪个维度去解决,都能达到调优的效 ...

  10. &lbrack;转&rsqb;happybase1&period;0 报错:ThriftPy does not support generating module with path in protocol &&num;39&semi;f&&num;39&semi;

    happybase1.0 报错:ThriftPy does not support generating module with path in protocol 'f' 2016-10-12 14: ...