它山之石可以攻玉

键盘上的生活
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

php遍历文件夹读取文件夹中图片并分页显示图片

Posted on 2011-04-23 15:44  陈达辉  阅读(6197)  评论(1编辑  收藏  举报

引子:我的网站图片目录images下有若干图片如1.jpg、2.jpg、3.jpg、……、n.jpg、1.gif、2.gif、3.gif、……、n.gif,要求在该images目录下建一个index.php文件,使得该文件分页显示images目录下的所有图片。 下面是我想到的办法。不知道有没有更好的办法。呵呵。。。在图片文件夹images下面建一个index.php文件,内容如下:

<?php
echo "<html><head><title>图片</title></head><body bgcolor=000000><center><font size=2 color=red>";//输出html相关代码
$page=$_GET['page'];//获取当前页数
$max=3;//设置每页显示图片最大张数
$handle = opendir('./'); //当前目录
    while (false !== ($file = readdir($handle))) { //遍历该php文件所在目录
      list($filesname,$kzm)=explode(".",$file);//获取扩展名
        if($kzm=="gif" or $kzm=="jpg" or $kzm=="JPG") { //文件过滤
          if (!is_dir('./'.$file)) { //文件夹过滤
            $array[]=$file;//把符合条件的文件名存入数组
            $i++;//记录图片总张数
           }
          }
    }
for ($j=$max*$page;$j<($max*$page+$max)&&$j<$i;++$j){//循环条件控制显示图片张数
    echo "<img widht=800 height=600 src=\"$array[$j]\"><br>";//输出图片数组
}
$Previous_page=$page-1;
$next_page=$page+1;
if ($Previous_page<0){
    echo "上页";
    echo "<a href=?page=$next_page>下页</a>";
}
    else if ($page<=$i/$max){
      echo "<a href=?page=$Previous_page>上页</a>";
      echo "<a href=?page=$next_page>下页</a>";}
        else{
          echo " <a href=?page=$Previous_page>上页</a>";
          echo "下页";
        }
echo "</center></body></html>";
?>