我有一个链接,我必须重复50次,每个文件夹,我有15个文件夹。我必须重复的链接看起来像这样:
<a href="update/images/Cars/car (x).JPG" rel="lightbox[cars]"></a>
现在,jpg文件被命名为car 1- car 50.我真的希望能够生成这个脚本,以便我可以输入路径“update / images / Cars /”图片标题(car)和输入我需要这个链接的次数,然后让它吐出一些看起来像这样的东西:
<a href="update/images/Cars/car (1).JPG" rel="lightbox[cars]"></a>
<a href="update/images/Cars/car (2).JPG" rel="lightbox[cars]"></a>
<a href="update/images/Cars/car (3).JPG" rel="lightbox[cars]"></a>
<a href="update/images/Cars/car (4).JPG" rel="lightbox[cars]"></a>
<a href="update/images/Cars/car (5).JPG" rel="lightbox[cars]"></a>
<a href="update/images/Cars/car (6).JPG" rel="lightbox[cars]"></a>
然后它不断重复,我假设这可以用计数器完成,但我不确定。谢谢!
答案 0 :(得分:2)
您可以使用for
循环执行此操作:
$path = "update/images/Cars/";
$title = "car";
$times = 50;
for($i = 1; $i <= $times; $i++)
echo "<a href=\"$path$title ($i).JPG\" rel=\"lightbox[$title]\"></a>\n";
我使用$title
作为lightbox
参数,因为你没有指定
答案 1 :(得分:2)
使用功能强大的文本编辑器。 ; - )
例如,在Vim中,我可以使用以下按键序列来创建所需的文本:
<a href="update/images/Cars/car (0).JPG" rel="lightbox[cars]"></a>
ESC a
)(
返回(搜寻大括号)答案 2 :(得分:0)
如果要添加或删除文件夹中的图像,则可以使用标准PHP库中的DirectoryIterator对象获得更好的结果。使用它需要PHP5,但也有一种老式的处理方式。此代码段假定目录中的所有文件都是您要列出的图像:
$link = '<a href="/path/to/update/images/Cars/%s" rel="lightbox[cars]">%s</a>';
$dir = new DirectoryIterator("/path/to/update/images/Cars");
foreach($dir as $file) if(!$file->isDot()) echo sprintf($link, $file, $file);
请注意,我将有关anchor-element的信息放入$ link变量中,然后使用sprintf将这些锚点打印到屏幕上。如果你没有PHP5,你可以这样做:
$link = '<a href="/path/to/update/images/Cars/%s" rel="lightbox[cars]">%s</a>';
$dir = opendir("/path/to/update/images/Cars");
while(($file = readdir($dir)!==false) if($file != "." && $file != "..") echo sprintf($link, $file, $file);
closedir($dir);
只有在您向库中添加更多车照并且不想更新产生所有链接的页面时,才需要这些。这两个片段都应自动搜索汽车图像目录并创建所需的链接。
您还可以更改这些片段以搜索子目录,这样您就可以使用更多代码来删除所有15个文件夹中图像的链接。如果您想查看该代码,请告诉我。