如何将 imagegif() 变成变量?
How can I turn imagegif() into a variable?
我正在尝试将 imagegif()
的内容获取到一个变量,或者将 gif 保存在一个变量中。
我想我可以做一个临时文件 file_get_contents()
,但我正在寻找更简单的方法。我不用Imagemagick,我用GD.
您应该可以使用 output buffer。这只是手册中带有上述输出缓冲区的精简示例:
function makeGif()
{
# Start capturing the content
ob_start();
# -------- Just do your image script starting here --------- #
$im = imagecreatetruecolor(100, 100);
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
imagegif($im);
imagedestroy($im);
# -------- stopping your image here -------- #
# This assigns the content of the output
$img = ob_get_contents();
# Stop capturing the output
ob_end_clean();
# Send back the content
return $img;
}
# $image should now contain the gif data
$image = makeGif();
我正在尝试将 imagegif()
的内容获取到一个变量,或者将 gif 保存在一个变量中。
我想我可以做一个临时文件 file_get_contents()
,但我正在寻找更简单的方法。我不用Imagemagick,我用GD.
您应该可以使用 output buffer。这只是手册中带有上述输出缓冲区的精简示例:
function makeGif()
{
# Start capturing the content
ob_start();
# -------- Just do your image script starting here --------- #
$im = imagecreatetruecolor(100, 100);
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
imagegif($im);
imagedestroy($im);
# -------- stopping your image here -------- #
# This assigns the content of the output
$img = ob_get_contents();
# Stop capturing the output
ob_end_clean();
# Send back the content
return $img;
}
# $image should now contain the gif data
$image = makeGif();