-1

我是 PHP 和 jQuery 的新手,但我想对我正在使用 easySlider 和 Lightbox 插件开发的投资组合做以下事情:

  1. 每个“li”标签显示六个图像或六个 div 图像的限制,并从目录中关闭它。

    • 如果目录中的图像超过六张,则创建一个新的“li”标签并再显示六张图像,直到加载该目录中的所有图像。

    • 如果图像的名称后带有数字 -> 显示:隐藏。例如: beta1 但我只想显示第一个“beta”

    • 按名称对图像进行排序。

  2. 如果不是代码本身,请不要让任何人访问该目录中的图像。

投资组合的代码如下:

<div id="portfolio_hold">
   <ul>

     <li>
      <div class="portfolio_pic_hold">

        <a href="large.jpg" rel="lightbox[]" >
          <img src="thumb.jpg"/>
        </a>

      </div>
     </li>

   </ul>
</div>

这是我想要展示的 html 示例。

4

1 回答 1

0

这可能会奏效

$thumbsPath = "trabalhos/design/thumbs/";
$imagespath = "trabalhos/design/images/";
$file_display = array('jpg', 'jpeg', 'png', 'gif');

if (file_exists($thumbsPath) == false)
{
    echo 'Directory \'', $thumbsPath, '\' not found.';
}
else
{
    $thumbs = glob($thumbsPath."*.[".implode($file_display,"|")."]");
    if (file_exists($imagesPath) == false){
            echo 'Directory \'', $imagesPath, '\' not found.';
    } else
    {
            $counter = 0;
            $filesPerPage = 6;
            foreach ($thumbs as $file)
            {
                    if($counter % $filesPerPage) echo "<li>";
                    $counter++;
                    $info = pathinfo($file);
                    $sFile =  basename($file,'.'.$info['extension']);

                    $aFiles = glob($images.$sFile."[0-9]+.[".implode($file_display,"|")."]"); //Este array tem todas as imagens relativas ao thumbnail que estás a ver
                    echo "<div><img /></div>";
                    if($counter == $filesPerPage) echo "</li>";
            }
    }
}
于 2012-05-30T10:58:06.080 回答