2011-08-07 181 views
1

我想通過PHP腳本顯示圖像,以便在html中具有正常的img但帶有php腳本的源代碼。然後,該腳本將打開一個現有的png或jpg圖像並通過它顯示該圖像。通過php腳本顯示png圖像

我一直在嘗試這個代碼,目前沒有運氣。

 
$img = imagecreatefrompng("logo.png"); 

header("Content-type: image/png"); 

imagepng($img); 
imagedestroy($img); 

沒有錯誤圖像輸出被破壞。

在此先感謝。

+0

有什麼問題? – deceze

+0

腳本中是否有其他輸出? '<?php'之前是否有空格? –

+0

是否有任何錯誤? – robert

回答

10
header("Content-type: image/png"); 
readfile("$file"); 
exit; 

這是好主意,添加一些標題,如:

header('Expires: 0'); 
header('Content-Length: ' . filesize($file)); 

看看這裏的討論: http://php.net/manual/en/function.readfile.php

+0

當然這隻讀取文件不顯示它? – aHunter

+1

@aHunter如果您的文件已經是PNG,並且您想將它顯示爲PNG,那麼您只需要執行* output * it。這裏完全不需要gd,'readfile'(將文件輸出到客戶端)很好。 – deceze

1

你必須把模具();在代碼的最後。否則,你會輸出額外的數據,這將導致圖像中的錯誤。

+0

我已經試過這個,但圖像輸出仍然是壞的。不管怎麼說,還是要謝謝你。 – aHunter

+0

除非腳本具有更多明確輸出內容的內容,否則不會輸出「額外數據」。 – JJJ