2013-03-05 81 views
0

我一直在嘗試這段代碼將圖像轉換爲base64,然後再次將它保存到磁盤映像文件中,但最終我得到了一個包含無效圖像文本的圖像文件。PHP base 64到圖像轉換

<?php 

$b64image = base64_encode(file_get_contents('1.png')); 

file_put_contents('abc.png',$b64image); 

?> 
+4

你*不想* base64編碼圖像。如果您打算通過電子郵件發送或打印到style/html src塊中,您只需要對圖像進行編碼。 – Xeoncross 2013-03-05 17:11:12

+0

其實我想要的是先將圖像轉換爲64位,然後再將其保存到磁盤。 – 2013-03-05 17:12:08

+4

爲什麼你要基地64編碼一個PNG文件?你想做什麼? – 2013-03-05 17:12:15

回答

2

您的圖片不能使用Base64編碼可以使用Base64編碼,而不是像很多觀衆將實際顯示用base64編碼的圖像。在將圖像存儲到另一個文件之前,您需要base64_decode,因此圖像查看器可以正確讀取圖像。

+1

更確切地說,它*可以被編碼,但結果本身不是有效的圖像數據。沒有我知道的圖像查看器可以識別和解碼base64數據。 – cdhowie 2013-03-05 17:13:04

+0

@cdhowie我會更新我的帖子,以獲得更高的精度。謝謝。 – 2013-03-05 17:14:15

+0

好的我的問題是,當我嘗試將任何bnary格式轉換爲圖像文件時,它會給出無效圖像。 – 2013-03-05 17:15:25