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

yipeiwu_com5年前PHP代码库

本文实例讲述了php遍历、读取文件夹中图片并分页显示图片的方法。分享给大家供大家参考,具体如下:

引子:我的网站图片目录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>";
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP目录操作技巧汇总》、《php文件操作总结》、《PHP常用遍历算法与技巧总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php简单实现发送带附件的邮件

本文实例讲述了php简单实现发送带附件的邮件。分享给大家供大家参考。具体如下: 下面是静态html代码: <html> <head> <title&...

php类常量用法实例分析

本文实例讲述了php类常量用法。分享给大家供大家参考。具体如下: <?php /** * PHP类常量 * * 类常量属于类自身,不属于对象实例,不能通过对象实例...

WordPress开发中用于获取近期文章的PHP函数使用解析

wp_get_recent_posts 函数在 WordPress 中是一个可以获取近期文章数组的函数,相较于其他的文章获取方式, wp_get_recent_posts 返回的将是一个...

php中Redis的应用--消息传递

php中Redis的应用--消息传递

阅读目录 1、摘要 2、实现方法 3、一对一消息传递 4、多对多消息传递 1、摘要 消息传递这一应用广泛存在于各个网站中,这个功能也是一个网站必不可少的。常见的消息传递应用有,新浪微博中...

php 计算两个时间戳相隔的时间的函数(小时)

这个是可以具体到小时的php代码复制代码 代码如下:/* Author: 杨宇 yangyu@sina.cn */ //输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表...