Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从图像大小调整中分离图像标记_Php_Image Processing_Imagemagick - Fatal编程技术网

Php 从图像大小调整中分离图像标记

Php 从图像大小调整中分离图像标记,php,image-processing,imagemagick,Php,Image Processing,Imagemagick,我目前在PHP中有一个名为img()的函数,它至少接受两个参数,例如: print img("foo.jpg", 100); 这将返回如下内容: <img src='/cache/foo_XXXXX.jpg' width='100' height='76' /> 我将退回此邮件: <img src='img.php?ARGUMENTS' width='?' height='?' /> 这意味着img()函数实际上根本不处理文件,而是输出HTML,告诉浏览器从PH

我目前在PHP中有一个名为img()的函数,它至少接受两个参数,例如:

print img("foo.jpg", 100);
这将返回如下内容:

<img src='/cache/foo_XXXXX.jpg' width='100' height='76' />
我将退回此邮件:

<img src='img.php?ARGUMENTS' width='?' height='?' />

这意味着img()函数实际上根本不处理文件,而是输出HTML,告诉浏览器从PHP脚本而不是服务器上的静态图像文件获取图像

现在,“参数”部分当然将包含img.php处理文件所需的所有信息,处理方式与img()处理文件的方式相同——可能是函数所有参数的序列化字符串版本


但问题是图像标记的宽度/高度值!由于处理被移到当前脚本的范围之外,所以它不知道生成的图像会有多大,对吗?我显然等不及img.php完成并返回它了。我使用imagemagick进行处理(因此第二个参数可以是100,“50%”,“您在数据库中的某个位置有所有图像的列表,对吗?您可以在生成HTML时添加宽度和高度字段,并计算缩放的宽度和高度。您还可以将缩略图的宽度和高度添加到数据库中。

否,这些图像只是服务器硬盘上的文件。至少到img()在某些情况下,对文件的引用保存在数据库中,但我们讨论的是用于不同目的的大量不同数据库,都使用img()进行显示
<img src='img.php?ARGUMENTS' width='?' height='?' />