php:如何创建一个二进制图像字符串而不将其保存到文件中?

use*_*831 4 php jpeg

我有一个图像变量,

$im = imagecreatetruecolor(400, 300);
Run Code Online (Sandbox Code Playgroud)

无论如何以jpeg格式获取此图像的二进制字符串而不将其保存到文件中?谢谢!

dec*_*eze 6

ob_start();
imagejpeg($im);
$imageString = ob_get_clean();
Run Code Online (Sandbox Code Playgroud)


kel*_*nik 5

是的,这是可能的(即使没有输出缓冲)。它似乎没有记录,但是您可以传递流资源而不是文件名。

<?php

$stream = fopen("php://memory", "w+");
$i = imagecreatetruecolor(200, 200);
imagepng($i, $stream);
rewind($stream);
$png = stream_get_contents($stream);
Run Code Online (Sandbox Code Playgroud)