当前位置:Gxlcms > PHP教程 > PHP获取目录下的图片并随机显示的代码_PHP教程

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

时间:2021-07-01 10:21:17 帮助过:9人阅读

当时想做一个随机更换背景图片的功能,用JavaScript写的话,程序流程应该是:建立一个图片数组->随机选择数组里其中一个值->生成样式并写入body标签。
可是用JS做的话,有以下缺点:
1.万一浏览器禁用了JS的话就失效了,而且写代码是需要考虑兼容性。
2.维护比较麻烦,图片的位置都存放在数组里。
于是我提议用PHP处理,可是我和她对PHP都是半桶水的,一时之间也想不出怎么做。今天时运高,看到一个PHP随机显示目录下图片的源码,学习一下,并分享之。

先看看原理:从一个目录里获取某类型文件的清单(用在WEB的话一般是jpg/gif/png)->通过随机函数选一个图片->输出代码。
PHP代码如下:
代码如下:
  1. <br>$imglist=''; <br>//用$img_folder变量保存图片所在目录,必须用“/”结尾 <br>$img_folder = "images/tutorials/"; <br>mt_srand((double)microtime()*1000); <br>//使用目录类 <br>$imgs = dir($img_folder); <br>//检查目录下是否有图片,并生成一个清单 <br>while ($file = $imgs->read()) { <br>if (eregi("gif", $file) || eregi("jpg", $file) || eregi("png", $file)) <br>$imglist .= "$file "; <br>} closedir($imgs->handle); <br>//把清单里的项都放到一个数组里 <br>$imglist = explode(" ", $imglist); <br>$no = sizeof($imglist)-2; <br>//生成一个介于0和图片数量之间的随机数 <br>$random = mt_rand(0, $no); <br>$image = $imglist[$random]; <br>//
输出结果
echo '';

如果要通过这个函数变换页面背景的话,可以把最后一句改为:
代码如下:
  1. <br>echo '<span id="url" itemprop="url">http://www.bkjia.com/PHPjc/321069.html</span><span id="indexUrl" itemprop="indexUrl">www.bkjia.com</span><span id="isOriginal" itemprop="isOriginal">true</span><span id="isBasedOnUrl" itemprop="isBasedOnUrl">http://www.bkjia.com/PHPjc/321069.html</span><span id="genre" itemprop="genre">TechArticle</span><span id="description" itemprop="description">当时想做一个随机更换背景图片的功能,用JavaScript写的话,程序流程应该是:建立一个图片数组-随机选择数组里其中一个值-生成样式并写...</span><p></p>

人气教程排行