PHP检查函数输出

时间:2011-07-04 12:07:31

标签: php image-processing resize

我有一个基本功能来调整下面给出的图像:

function resize() {

.....
...
..

imagejpeg($image_new,$img_path,80);

imagedestroy($image_old);
imagedestroy($image_new);
}

我需要在另一个函数中调用它并查看其输出。我怎样才能做到这一点?我想要这样的东西:

function test(){
//calling resize function
if (resize() === true){ 
    echo "Success";
    } else {
    echo "resized failed"; 
    }
}

我不理解的是,调整大小功能只是创建图像并破坏旧的图像文件。如何返回它成功与否的输出?感谢。

2 个答案:

答案 0 :(得分:0)

正如所写,resize函数没有返回成功或失败的信息,而且它总是会破坏两个图像(两个imagedestroy调用)。您需要重写该功能,以考虑imagedestroyimagejpeg的返回代码。 documentation for the latter表示该函数将返回一个布尔值,表明它是否成功。

答案 1 :(得分:0)

imagejpeg()在失败时返回布尔值FALSE(根据API;收集其返回值并将其用作resize()函数的返回值:

function resize () {
  ...
  $success = imagejpeg($image_new, $img_path, 80);
  ...
  return $success
}

另外,您可能应该将图像作为参数传递给resize() ...看起来您有一些全局变量,这不是good(1){{3 }}(2)