-1

我有php从memcached获取的二进制图像数据,它将其发送到javascript,然后Javascript创建一个新图像并将源设置为数据,数据已经在base64_encoding中,因为它来自用户上传时的机器图像文件到站点,我使用 javascript FIle_Reader 获取二进制数据,将其发送到 php,并将其存储在 File_Server 和 memcached 中以备后用。但是,当检索数据并尝试使用它来输出可视图像时,我得到了错误,我已经搜索了网络,但没有人真正为我的具体问题提供解决方案。

function Create_Img_From_Binary($data){
    $Data=json_encode($data);
    echo "
    <script>
    function Create_Img_From_Binary(data){
      let img= document.createElement('img');
      img.src=$data;
      document.body.appendChild(img); 
        
    }
    Create_Img_From_Binary($Data);
    </script>
    ";
   
}
$fd= fopen("img.html",'r');
$data= fread($fd,filesize("img.html"));
Create_Img_From_Binary($data);




  The img.html file just contains the raw image data
4

1 回答 1

0

以这种方式使用标签:

<img src="data:image/gif;base64,xxxxxxxxxxxxx...">

其中上面的 xxxx 是图像 base64 图像代码。

或者

<img src="data:image/jpeg;base64, <?=base64_encode($Data)?>">

这里 $data 是你的二进制图像

它只是解决您的问题。看看它是否有效。

于 2021-03-30T06:04:20.597 回答