2012-06-05 39 views
1

我想用PHP脚本显示图像。 我从数据库中获取图像数据。数据是一个字节[]。 有谁知道如何做到这一点?PHP从字节[]中获取图像数据库

我想这又:

function GetImage($imageDataArray) 
{ 
    $base64String = ""; 
    for($i = 0; $i < count($imageDataArray); $i++) 
    { 
     $string = trim(strtr(base64_encode($imageDataArray[$i]), '+/', '-_'), '='); 
     $base64String .= $string; 
    } 

    return 'data:image/png;base64,' . $base64String ; 
} 

这里称之为:

echo '<img src="'.$im->GetImage($imageDataArray).'" alt="Picture" />'; 

但我没有得到一个结果。图片未显示。

+0

有以下 [base64编码图像]看看[1] [1]:http://stackoverflow.com/问题/ 3259967 /发送 - 显示一个base64编码图像 –

+0

@Ummar:我试过这样(请参阅我的代码)。它不适合。 –

+0

你是否将content-type header设置为image/png?像'header(“Content-Type:image/png”);' –

回答

0

摆脱base64_encode() && use urlencode() || rawurlencode()

+0

@Ummar:我认为用urlencode()它不会运行。我认为,base64_encode()是错误的,因为我得到一个像这样的字符串:_data:image/png; base64,MTM3ODANzgNzEMTMMTAMjYMTAMAMAMAMTMNzMNzINjgODIMAMAMAMAM4MAMAMAMTI4OANgMAMAMAMTk1NjIOTcM ..._我在ASP.NET MVC中也尝试过。我在那里没有任何问题,并且base64字符串是不同的。 –