Php 新手需要为获取数据并以可用格式返回的脚本提供建议
我有大量的图片,我把它们放到网页上。我认为我可以编写一个脚本来完成这项工作,而不是费力地输入所有的图像属性。我只需要往正确的方向推一下 我希望脚本获得每个图像的宽度和高度,然后将其格式化为一个img标记,其中包含我正在使用的url。我在想,首先我将循环遍历目录中的文件,并将我要查找的结果输出到一个文件中。然后我可以复制和粘贴 理想情况下,它最终应该有一个GUI,您可以在其中选择每个文件,将结果保存到剪贴板,然后将其直接粘贴到文档中。但我相信这一点我无法理解 我对编码有基本的了解,并用Python和PHP编写了少量脚本 我从哪里开始?我能用Python吗?还是PHP?还是另一种语言?PHP有一个getimagesize()函数,它返回我需要的数据。Python有类似的功能吗Php 新手需要为获取数据并以可用格式返回的脚本提供建议,php,python,scripting,image-processing,web,Php,Python,Scripting,Image Processing,Web,我有大量的图片,我把它们放到网页上。我认为我可以编写一个脚本来完成这项工作,而不是费力地输入所有的图像属性。我只需要往正确的方向推一下 我希望脚本获得每个图像的宽度和高度,然后将其格式化为一个img标记,其中包含我正在使用的url。我在想,首先我将循环遍历目录中的文件,并将我要查找的结果输出到一个文件中。然后我可以复制和粘贴 理想情况下,它最终应该有一个GUI,您可以在其中选择每个文件,将结果保存到剪贴板,然后将其直接粘贴到文档中。但我相信这一点我无法理解 我对编码有基本的了解,并用Python
对不起,我的话太多了。感谢您的输入。也许更好的解决方案不是创建一个脚本,生成所有图像元素的列表,供您放入文档,而是在所需文档中动态生成图像元素。可以这样做:
if ($handle = opendir('/path/to/images')) {
while (false !== ($file = readdir($handle))) {
?>
<img src="http://you.server.com/path/to/images/<?php echo $file ?>" alt="<?php echo $file ?>" />
<?php
}
closedir($handle);
}
if($handle=opendir('/path/to/images')){
while(false!=($file=readdir($handle))){
?>
“alt=”“/>
“alt=”“/>
也许更好的解决方案不是创建一个脚本,生成所有图像元素的列表,供您放入文档中,而是在所需文档中动态生成图像元素。可以这样做:
if ($handle = opendir('/path/to/images')) {
while (false !== ($file = readdir($handle))) {
?>
<img src="http://you.server.com/path/to/images/<?php echo $file ?>" alt="<?php echo $file ?>" />
<?php
}
closedir($handle);
}
if($handle=opendir('/path/to/images')){
while(false!=($file=readdir($handle))){
?>
“alt=”“/>
“alt=”“/>
请查看:
有关文件循环,请参阅。查看:
有关文件循环的信息,请参见。您也可以从以下位置使用shell命令:
您还可以从以下位置使用shell命令:
我认为这应该是你想要的。但这不一定是最好的方式(时间晚了,我累了,等等):
我认为这应该是你想要的。但这不一定是最好的方式(时间晚了,我累了,等等):
因为如果不指定宽度和高度,渲染引擎必须等到图像加载(至少部分加载)后才能知道它们的尺寸,这会导致页面加载时布局发生恼人的变化。要添加图像大小,可以这样做:if($handle=opendir('/path/to/images'){while(false!=($file=readdir($handle)){$size=getimagesize('/path/to/images/'.$file);?>因为如果不指定宽度和高度,渲染引擎必须等待图像加载(至少部分加载)要知道它们的尺寸,这会导致页面加载时布局发生恼人的更改。要添加图像大小,可以这样做:if($handle=opendir('/path/to/images'){while($file=readdir($handle)){$size=getimages('/path/to/images/')。$file)?>不是一个真正的答案,但是:我会考虑使用某种内容管理系统。我不知道有谁专门用于图像,但我会想到wordpress或Plone。不是一个真正的答案,但是:我会考虑使用某种内容管理系统。我不知道有谁专门用于图像凯莉的图片,但wordpress或Plone出现在我的脑海中。非常感谢你回复我的帖子。因为我一直涉猎PHP,所以我按照你的建议做了一些修改。以下是我的想法:这是我需要的,但可能没有遵循好的程序。TXI如果你同意我的建议,那么我认为你应该接受我的建议答案=)另一方面,如果你的代码完全不同——根据你自己的评估——你应该自己回答这个问题,并接受它。如果只是因为代码在回答中比在评论中更容易阅读……=)非常感谢你回复我的帖子。因为我一直在涉猎PHP,所以我同意你的建议,并做了一些修改愿景。这是我想到的:这是我需要的,但可能没有遵循好的程序。如果你同意我的建议,那么我认为你应该接受答案=)另一方面,如果你的代码有足够的不同-根据你自己的评估-你应该自己回答这个问题,并接受它。如果只是因为代码是在回答中比在评论中更容易阅读的糟糕景象…=)
from PIL import Image
im = Image.open("yourfile.jpg")
print im.size
for file in dir/*; do
identify -format "Width: %w, Height: %h" $file
done
<?php
$directory = "img"; // The path in which your images are located.
if ($directory) {
$files = scandir($directory); // $files becomes an array of files in the relevant directory.
}
foreach($files as $k => $v) {
if ($v == "." || $v == "..") {
// because I'm not good enough to think of a better way
unset($k);
}
else {
$size = getimagesize($directory . "/" . $v);
$images[] = array('img' => $v, 'w' => $size[0], 'h' => $size[1]); // $size[0] is width, $size[1] is height, both in px.
}
}
unset($files); // I just like to clear as I go. I make more than enough mess as it is without keeping it around.
if ($images) {
foreach($images as $key => $value) {
echo "\n\t\t<img src=\"$directory/" . $value[img] . "\" width=\"" . $value[w] . "px\" height=\"" . $value[h] . "px\" alt=\"" . $value[img] . "\" />";
}
}
?>