PHP实现自动对图片进行滚动显示的方法

前端之家收集整理的这篇文章主要介绍了PHP实现自动对图片进行滚动显示的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了PHP实现自动图片进行滚动显示方法分享给大家供大家参考。具体如下:

指定某个图片目录,该程序自动页面上滚动展示每一张图片,使用方法

1. 创建一个幻灯片的图像文件夹。 2. 删除图像文件夹中的幻灯片。 3. 将下面代码编码后,粘贴在一个文本文件中,命名为“index.PHP” 4. 上传文件到一个目录中 5. 更换第6和8行为你对应的设置。 6. 运行 (使用第4步中设置的URL)

代码如下:

代码如下:
init()) != '') { header('HTTP/1.1 500 Internal Server Error'); echo $err; exit(); } // get image files from directory $ss->get_images(); // set variables,done. list($curr,$caption,$first,$prev,$next,$last) = $ss->run(); /* slideshow class,can be used stand-alone */ class slideshow { private $files_arr = NULL; private $err = NULL; public function __construct(&$err) { $this->files_arr = array(); $this->err = $err; } public function init() { // run actions only if img array session var is empty // check if image directory exists if (!$this->dir_exists()) { return 'Error retrieving images,missing directory'; } return ''; } public function get_images() { // run actions only if img array session var is empty if (isset($_SESSION['imgarr'])) { $this->files_arr = $_SESSION['imgarr']; } else { if ($dh = opendir(IMGDIR)) { while (false !== ($file = readdir($dh))) { if (preg_match('/^.*\.(jpg|jpeg|gif|png)$/i',$file)) { $this->files_arr[] = $file; } } closedir($dh); } $_SESSION['imgarr'] = $this->files_arr; } } public function run() { $curr = 1; $last = count($this->files_arr); if (isset($_GET['img'])) { if (preg_match('/^[0-9]+$/',$_GET['img'])) $curr = (int) $_GET['img']; if ($curr <= 0 || $curr > $last) $curr = 1; } if ($curr <= 1) { $prev = $curr; $next = $curr + 1; } else if ($curr >= $last) { $prev = $last - 1; $next = $last; } else { $prev = $curr - 1; $next = $curr + 1; } // line below sets the caption name... $caption = str_replace('-',' ',$this->files_arr[$curr - 1]); $caption = str_replace('_',$caption); $caption = preg_replace('/\.(jpe?g|gif|png)$/i','',$caption); $caption = ucfirst($caption); return array($this->files_arr[$curr - 1],1,$last); } private function dir_exists() { return file_exists(IMGDIR); } } ?> Slideshow