php blob轉base64的方法:1、開啟對應的程式碼檔案;2、修改PHP內容為「fetch("/path/to/server", {method: "POST"body: files[i ]})...」即可。
本文操作環境: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 = "<p>No files selected!</p>"; } 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 + "<br>" + 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影片教學》
以上是php blob 怎麼轉base64的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。