带有lightbox、文件夹导入和文件名描述的PHP库

带有lightbox、文件夹导入和文件名描述的PHP库,php,import,directory,gallery,lightbox,Php,Import,Directory,Gallery,Lightbox,是否有具有三个功能的图库: 在灯箱中显示图片 允许一次从文件夹导入数十个或数百个图像 从文件名中获取描述 我必须在昨天完成:)我已经和最初的Lightbox一起完成了我自己的脚本 决定这样会快得多: <?php echo str_replace(array('<','>'), array('&lt;','&gt;'),'<table id="galx"><tr>'); $

是否有具有三个功能的图库:

  • 在灯箱中显示图片
  • 允许一次从文件夹导入数十个或数百个图像
  • 从文件名中获取描述

我必须在昨天完成:)

我已经和最初的Lightbox一起完成了我自己的脚本 决定这样会快得多:

        <?php
            echo str_replace(array('<','>'), array('&lt;','&gt;'),'<table id="galx"><tr>');
            $source_dir = 'images/taken/from/here';
            $mini_dir = 'mini';
            $target_dir = 'imagies/copied/to/there';
            $i=0;

            $images = array_diff(scandir($source_dir), array('..', '.',$mini_dir));
            foreach($images as $image)
            {
                $filename = pathinfo($image, PATHINFO_FILENAME);
                $title = mb_strtoupper(trim(str_replace('_',' ',$filename)));
                $s = "<td><a href='$target_dir/$image' data-lightbox='galx' data-title='$title' >"
                        . "<img src='$target_dir/$mini_dir/$filename.jpg' /><br/>"
                        . "$title<a/></td>";  //gallery with titles
                /*$s = "<td><a href='$target_dir/$image' data-lightbox='galx' >"
                        . "<img src='$target_dir/$mini_dir/$filename.jpg' />"
                        . "<a/></td>";*/ //gallery without titles

                if (++$i % 5 == 0)
                    $s .= '</tr><tr>';

                $s = str_replace(array('<','>'), array('&lt;','&gt;'), $s); //comment this line if want to paste it as php code
                echo $s;
            }
            echo str_replace(array('<','>'), array('&lt;','&gt;'),'</tr></table>');
        ?>
我使用FastStone图像查看器一次性批量调整图像大小并创建微型模型。在应用程序中,只需按F3键即可打开高级处理工具

在Windows-PHP错误中,它无法处理非英语字母。在Linux上,它仍然破坏了文件名的第一个非英语字母,因此在这种情况下需要加前缀“\u1”

总的来说效果不错——我把脚本藏在了网站的某个地方,在1.5小时内生成了6个图库,包含了约1.5万张图片,大部分时间都被文件处理和复制所消耗。不优雅但有效

#galx {
  width: 650px;
}

#galx td {
    text-align: center;
}

#galx a {
    display: block;
    width: 120px;
    font-size: 0.8em;
    margin:1px auto;
    text-decoration: none;
    color: black;
    text-align: center;
}