程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP實現自動對圖片進行滾動顯示的方法

PHP實現自動對圖片進行滾動顯示的方法

編輯:關於PHP編程

     這篇文章主要介紹了PHP實現自動對圖片進行滾動顯示的方法,涉及php操作圖片特效的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

       

    本文實例講述了PHP實現自動對圖片進行滾動顯示的方法。分享給大家供大家參考。具體如下:

    指定某個圖片目錄,該程序自動在頁面上滾動展示每一張圖片,使用方法:

    1. 創建一個幻燈片的圖像文件夾。
    2. 刪除圖像文件夾中的幻燈片。
    3. 將下面代碼編碼後,粘貼在一個文本文件中,命名為“index.php”
    4. 上傳文件到一個目錄中
    5. 更換第6和8行為你對應的設置。
    6. 運行 (使用第4步中設置的URL)

    代碼如下:

    代碼如下: <?
    /*
    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], $caption, 1, $prev, $next, $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程序設計有所幫助。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved