我正在 Symfony2 中构建一个用于调整图像大小的脚本。
因为我希望能够使用标准 Symfony2 响应系统......
$headers = array('Content-Type' => 'image/png',
'Content-Disposition' => 'inline; filename="image.png"');
return new Response($img, 200, $headers); // $img comes from imagecreatetruecolor()
...我需要一个字符串作为响应发送。不幸的是,像这样的函数imagepng
只写入文件或直接输出到浏览器,不返回字符串。
到目前为止我能想到的唯一解决方案是
1]将图像保存到临时位置,然后再次读取
imagepng($img, $path);
return new Response(file_get_contents($path), 200, $headers);
2]使用输出缓冲
ob_start();
imagepng($img);
$str = ob_get_contents();
ob_end_clean();
return new Response($str, 200, $headers);
有没有更好的办法?
输出缓冲可能是最好的解决方案。
顺便说一句,你可以少调用一个函数:
ob_start();
imagepng($img);
$str = ob_get_clean();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)