2016-01-12 118 views
0

我有一個代碼來預覽封面照片從MP3文件。它顯示封面照片,但我想導出圖像爲.jpg格式如何做到這一點?這裏是我的代碼MP3封面照片導出爲JPG格式

require_once('getid3.php'); 

$getID3 = new getID3; 
#$getID3->option_tag_id3v2 = true; 
$getID3->analyze("Daayre.mp3"); 

if (isset($getID3->info['id3v2']['APIC'][0]['data'])) { 
    $cover = $getID3->info['id3v2']['APIC'][0]['data']; 
} elseif (isset($getID3->info['id3v2']['PIC'][0]['data'])) { 
    $cover = $getID3->info['id3v2']['PIC'][0]['data']; 
} else { 
    $cover = null; 
} 

if (isset($getID3->info['id3v2']['APIC'][0]['image_mime'])) { 
    $mimetype = $getID3->info['id3v2']['APIC'][0]['image_mime']; 
} else { 
    $mimetype = 'image/jpeg'; // or null; depends on your needs 
} 

if (!is_null($cover)) { 
    header("Content-Type: ".$mimetype); 
    if (isset($getID3->info['id3v2']['APIC'][0]['image_bytes'])) { 
     header("Content-Length: ".$getID3->info['id3v2']['APIC'][0]['image_bytes']); 
    } 

    echo($cover); 
} 

這裏如果我寫<img src="<?php echo $cover; ?>"/>則顯示圖片。 我想導出圖片。 怎麼辦?

回答

0

$cover裏面儲存了什麼?看起來好像你應該只能將$cover寫入文件。嘗試file_put_contents,例如:在file_put_contentshere

//If $cover is not a stream or string of data, you may need to make it one. 
//For example, using fopen or another method depending on what $cover is 
$filename = "somefilename.jpg"; 
file_put_contents($filename, $cover); 

更多信息。這也取決於你的意思是「出口」。你想將文件發送給用戶還是隻將文件存儲在您的計算機/服務器上?

+0

我想將它作爲jpg文件存儲在本地目錄中 – Swister

+0

我做到了。謝謝先生@Michael Lea Crawford – Swister

+0

謝謝@Swister。如果這個答案是正確的,並幫助你,你會介意接受它作爲答案嗎?謝謝! –