使用PHP生成然后保存图像

时间:2011-09-15 18:01:02

标签: php mysql gd

我刚写了这段代码来生成图片

<?php

$canvas = imagecreatetruecolor(800, 350);

$pink = imagecolorallocate($canvas, 255, 105, 180);
$white = imagecolorallocate($canvas, 255, 255, 255);
$green = imagecolorallocate($canvas, 132, 135, 28);

imagefill($canvas, 0, 0, $white); // BACKGROUND

function drawlinebox($x1, $y1, $x2, $y2, $height, $color){
    global $canvas;
    imagesetthickness ( $canvas, 1 );
    for ($i=1; $i < $height; $i++){
        imageline( $canvas, $x1, $y1, $x2, $y2, $color );
        $y1++; $y2++;
    }
}

drawlinebox(20, 20, 780, 300, 30, $green);

drawlinebox(20, 300, 780, 20, 30, $pink);

// Output and free from memory
header('Content-Type: image/png');

imagepng($canvas, NULL, 9);

imagedestroy($canvas);

?>

但我也想让这张图片自动保存在服务器上。 把它想象成一个cron工作。创建图像,然后将图像保存在服务器上供以后使用,并将保存的图像位置插入数据库。

1 个答案:

答案 0 :(得分:6)

如手册中所述,imagepng()的第二个参数是$filename,它允许您将结果存储在文件中。