簡體   English   中英

如何從 base64 數據 URI 保存 PNG 圖像服務器端

[英]How to save a PNG image server-side, from a base64 data URI

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將 canvas 繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將此工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是使用 Canvas2Image 在客戶端生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 根據我的閱讀,我相信我應該使用 PHP 的imagecreatefromstring function,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具將畫布繪圖轉換為 PNG 圖像。 我現在需要的是使用 PHP 將這個工具生成的那些 base64 字符串轉換為服務器上的實際 PNG 文件。

簡而言之,我目前正在做的是在客戶端使用 Canvas2Image 生成一個文件,然后檢索 base64 編碼的數據並使用 AJAX 將其發送到服務器:

// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);   

image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);

var url = 'hidden.php',
data = $('#canvasimage').attr('src');

$.ajax({ 
    type: "POST", 
    url: url,
    dataType: 'text',
    data: {
        base64data : data
    }
});

此時,“hidden.php”接收到一個數據塊,看起來像data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...

從這一點開始,我幾乎被難住了。 從我讀過的內容來看,我相信我應該使用 PHP 的imagecreatefromstring函數,但我不確定如何從 base64 編碼的字符串實際創建實際的 PNG 圖像並將其存儲在我的服務器上。 請幫助!

假設您在 $filename 中有文件名,在 $testfile my oneliner 中有 base64encoded 字符串:

 file_put_contents($filename,base64_decode(explode(',', $testfile)[1]))

我希望這能幫到您。 我用核心 php 方法解決了這個問題。 我解決的代碼如下。

$base64string = 'BASE64 STRING GOES HERE';
$uploadpath   = 'YOUR UPLOAD DIR PATH';
$parts        = explode(";base64,", $base64string); //THIS WILL GET THE ORIGINAL FILE ENCODE STRING
$imagebase64  = base64_decode($parts[1]); //THIS WILL GET THE DECODED IMAGE STRING
$file         = $uploadpath . uniqid() . '.png'; // THIS WILL GIVE THE FILE NAME AND SET THE FILE PATH
file_put_contents($file, $imagebase64); // THIS FUNCTION WILL STORE THE IMAGE TO GIVEN PATH WITH FILE_NAME

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM