如何将 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();