首頁  >  文章  >  後端開發  >  如何在 PHP 中正確地將資料 URI 儲存為文件

如何在 PHP 中正確地將資料 URI 儲存為文件

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-23 08:55:02631瀏覽

How to Correctly Save Data URIs as Files in PHP

將Data-URI 轉換為PHP 中的檔案

當負責儲存從JavaScript 取得的資料URI 時,會出現一個常見問題:生成的圖像檔案似乎已損壞。當使用類似以下的程式碼時,經常會出現此問題:

$data = $_POST['logoImage'];

$uri = substr($data,strpos($data,",")+1);

file_put_contents($_POST['logoFilename'], base64_decode($uri));

要解決此問題,請查閱PHP 手冊,您將在其中找到以下見解:

「如果您想要保存從Javascript canvas.toDataURL() 函數派生的數據,您必須將空格轉換為加號,如果不這樣做,則解碼的數據會損壞:“

$encodedData = str_replace(' ','+',$encodedData);
$decodedData = base64_decode($encodedData);

在此示例中, 'encodedData' 變數是從JavaScript 取得的資料URI 字串。以加號 (' ') 取代空格 (' ') 可修正解碼過程中可能發生的任何損壞。然後可以使用提供的 file_put_contents 函數成功保存解碼的資料。

以上是如何在 PHP 中正確地將資料 URI 儲存為文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn