PHP实现自动对图片进行滚动显示的方法
发布时间:2020-12-13 02:28:07 所属栏目:PHP教程 来源:网络整理
导读:《PHP实现自动对图片进行滚动显示的方法》要点: 本文介绍了PHP实现自动对图片进行滚动显示的方法,希望对您有用。如果有疑问,可以联系我们。 本篇章节讲解PHP实现自动对图片进行滚动显示的办法.供大家参考研究.具体如下: PHP编程 指定某个图片目
《PHP实现自动对图片进行滚动显示的方法》要点: 本篇章节讲解PHP实现自动对图片进行滚动显示的办法.分享给大家供大家参考.具体如下:PHP编程 指定某个图片目录,该程序自动在页面上滚动展示每一张图片,使用办法:PHP编程 1. 创建一个幻灯片的图像文件夹. 代码如下:
代码如下:
<?
/* ??? PHP image slideshow - auto version - PHP5 */ // set the absolute path to the directory containing the images define ('IMGDIR','/home/devel/public_html/domain.com/public/images/slideshow/'); // same but for www define ('WEBIMGDIR','/images/slideshow/'); // set session name for slideshow "cookie" define ('SS_SESSNAME','slideshow_sess'); // global error variable $err = ''; // start img session session_name(SS_SESSNAME); session_start(); // init slideshow class $ss = new slideshow($err); if (($err = $ss->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); ??? } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> ??? <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ??? <title>Slideshow</title> ??? <style type="text/css"> ??? body{margin: 0;padding: 0;font: 100% Verdana,Arial,Helvetica,sans-serif;font-size: 14px;} ??? div#gallery{border: 1px #ccc solid;width: 600px;margin: 40px auto;text-align: center;} ??? div#gallery img{margin: 20px;border: 2px #004694 solid;} ??? div#gallery p{color: #004694;} ??? div#gallery div.pn{padding: 10px;margin: 0 5px;border-top: 1px #ccc solid;} ??? a{color:#333;} ??? a:hover{color:#cc0000;} ??? a.sp{padding-right: 40px;} ??? </style> </head> <body> ??? <div id="gallery"> ??????? <img src="<?=WEBIMGDIR;?><?=$curr;?>" alt="" /> ??????? <p><?=$caption;?></p> ??????? <div class="pn"> ??????????? <a href="?img=<?=$first;?>">First</a> | <a href="?img=<?=$prev;?>" class="sp">Previous</a><a href="?img=<?=$next;?>">Next</a> | <a href="?img=<?=$last;?>">Last</a> ??????? </div> ??? </div> </body> </html> 希望本文所述对大家的php程序设计有所赞助.PHP编程 编程之家培训学院每天发布《PHP实现自动对图片进行滚动显示的方法》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |