phpblob如何转base64

本篇内容介绍了“php blob如何转base64”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

十多年的珠海网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整珠海建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“珠海网站设计”,“珠海网站推广”以来,每个客户项目都认真落实执行。

php blob转base64的方法:1、打开相应的代码文件;2、修改PHP内容为“fetch("/path/to/server", {method: "POST"body: files[i]})...”即可。

php blob如何转base64

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php blob 怎么转base64?

在PHP中将本地图像Blob转换为base64

具体问题描述:

我正在为内部工具编写(HTML)表单.用户可以填写有关问题的数据并附加屏幕截图.然后将此表单通过Ajax提交给PHPMailer进行发送.问题出在截图上.由于系统限制,我无法让用户实际将文件上传到服务器.

当前,我正在使用HTML5文件阅读器来选择文件.然后,我将图像Blob转换为base64,并将其发送到PHPMailer,以转换为附件.这实际上工作得很好.但是,我遇到了文件大小问题.具体来说就是1000px x 1000px(402KB)的测试图像.产生的base64字符串超过一百万个字符,并且请求返回 413(请求实体太大).

我知道base64并不是传输大型图像的有效方法,并且我已经看到有关从数据库检索/转换图像斑点的各种文章.我找不到的是有关检索本地图像Blob并将其转换为base64的信息.

我的图片Blob网址如下所示: blob: http://example.com/18960927-e220-4417-93a4-edb608e5b8b3

是否有可能在PHP中获取此本地图像数据,然后将其转换为base64?

我不能发布很多源代码,但是,以下内容将使您了解我如何使用FileReader

window.onload=function(){
window.URL = window.URL || window.webkitURL;
var fileSelect = document.getElementById("fileSelect"),
    fileElem = document.getElementById("fileElem"),
    fileList = document.getElementById("fileList");
fileSelect.addEventListener("click", function (e) {
  if (fileElem) {
    fileElem.click();
  }
  e.preventDefault(); // prevent navigation to "#"
}, false);
}
function handleFiles(files) {
  if (!files.length) {
    fileList.innerHTML = "

No files selected!

";   } else {     fileList.innerHTML = "";     var list = document.createElement("ul");     fileList.appendChild(list);     for (var i = 0; i < files.length; i++) {         if(files[i].size > 1000000) {             alert(files[i].name + ' is too big. Please resize it and try again.');         } else {         var li = document.createElement("li");       list.appendChild(li);       var img = document.createElement("img");       img.src = window.URL.createObjectURL(files[i]);       img.height = 60;       img.setAttribute("class", "shotzPrev");       img.onload = function() {         window.URL.revokeObjectURL(this.src);       }       li.appendChild(img);       var info = document.createElement("span");       info.innerHTML = files[i].name + "
" + files[i].size + " bytes";       li.appendChild(info);         }     }   } }

解决方案:

您可以将File对象的POST php

fetch("/path/to/server", {
  method: "POST"
  body: files[i]
})
.then(response => console.log(response.ok))
.catch(err => console.error(err));

“php blob如何转base64”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


本文题目:phpblob如何转base64
分享路径:http://ybzwz.com/article/jjpsss.html