假设我在 PHP 中完成了以下操作:
$image = imagecreatefromjpeg('myImage.jpg);
有没有办法将图像数据$image
转换为可以在我的 AJAX 响应中发送的字符串?
像这样的东西应该可以从图像中获取 base64 编码的字符串:
<?php
$image = imagecreatefromjpeg('myImage.jpg');
ob_start();
imagejpeg($image);
$imagestring = ob_get_contents();
ob_end_clean();
$encoded = base64_encode($imagestring);
?>
<pre><?php echo $encoded ?></pre>
<img src="data://image/jpeg;base64,<?php echo $encoded ?>" alt="myImage" />
这会将 base64 编码的图像作为字符串输出,并且还将使用该编码字符串显示图像。
使用 base64 或其他可用的二进制->文本编码方案,并将其与 ajax 中的数据一起传递,并在客户端解码。
PHP有base64函数,见http://php.net/manual/en/function.base64-encode.php