PHP 创建的图片对像如何直接转成base64字符串??

我用PHP imagecreatetruecolor生成了一个图片对像$im (当然还有一些详细的图片处理过程这里不多描述...),我可以用header("Content-type: image/png");imagepng($im);直接输出这张图片。那么请问,我如何直接将$im转成base64位的字符串,不需要直接显示图片(因为我要需要将这个base64字符串保存到数据库中)。

ob_start ();

//$im是你自己创建的图片资源
imagepng ($im);

$image_data = ob_get_contents ();

ob_end_clean ();

//得到这个结果,可以直接用于前端的img标签显示
$image_data_base64 = "data:image/png;base64,". base64_encode ($image_data);


你生成图片的代码保存成一个php文件,然后新建一个php文件,使用file_get_contents二进制安全去请求你的图片页面。之后把请求到的数据通过base64_encode加密后写入数据库。

ob_start ();

//$im是你自己创建的图片资源
imagepng ($im);

$image_data = ob_get_contents ();

ob_end_clean ();

//得到这个结果,可以直接用于前端显示: