找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1194|回复: 0
打印 上一主题 下一主题

PHP 获取目录下的图片并随机显示的代码

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

积分
7694
跳转到指定楼层
楼主
发表于 2018-2-14 09:01:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

            当时想做一个随机更换背景图片的功能,用JavaScript写的话,程序流程应该是:建立一个图片数组->随机选择数组里其中一个值->生成样式并写入body标签。
可是用JS做的话,有以下缺点:
1.万一浏览器禁用了JS的话就失效了,而且写代码是需要考虑兼容性。
2.维护比较麻烦,图片的位置都存放在数组里。
于是我提议用PHP处理,可是我和她对PHP都是半桶水的,一时之间也想不出怎么做。今天时运高,看到一个PHP随机显示目录下图片的源码,学习一下,并分享之。
先看看原理:从一个目录里获取某类型文件的清单(用在WEB的话一般是jpg/gif/png)->通过随机函数选一个图片->输出代码。
PHP代码如下:
[U]复制代码[/U] 代码如下:
$'';
//用$变量保存图片所在目录,必须用“/”结尾
$"images/tutorials/";
mt_srand((double)microtime()*1000);
//使用目录类
$($);
//检查目录下是否有图片,并生成一个清单
while ($file = $->read()) {
if (eregi("gif", $file) || eregi("jpg", $file) || eregi("png", $file))
$"$file ";
} closedir($->handle);
//把清单里的项都放到一个数组里
$(" ", $);
$no = sizeof($)-2;
//生成一个介于0和图片数量之间的随机数
$random = mt_rand(0, $no);
$image = $[$random];
//输出结果
echo '

';

如果要通过这个函数变换页面背景的话,可以把最后一句改为:
[U]复制代码[/U] 代码如下:
echo '';

并用整段程序替换标签。
如果需要多次调用此程序的话,可以写成一个函数,各位按需要改写。
总结
用PHP的方法来输出随机图片的好处是:
1.维护简单,只需要控制目录里图片的数量。
2.可以自定义文件类型,只要你有需要,改成随机输出一个Flash也行的
3.可以自定义输出结果,换句话说,用在什么地方都行了
4.改写成函数后功能更强大
            
            
您可能感兴趣的文章:
  • 深入PHP获取随机数字和字母的方法详解
  • php+mysql实现数据库随机重排实例
  • php获取随机数组列表的方法
  • php获取四位字母和数字的随机数的实现方法
  • php中实现获取随机数组列表的自定义函数
  • php随机获取金山词霸每日一句的方法
  • php 利用array_slice函数获取随机数组或前几条数据
  • php获取一定范围内取N个不重复的随机数
  • php获取指定数量随机字符串的方法
  • PHP随机获取未被微信屏蔽的域名(微信域名检测)
  • php 从指定数字中获取随机组合的简单方法(推荐)
  • PHP实现在数据库百万条数据中随机获取20条记录的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端