Banner程序


Posted in PHP onOctober 09, 2006

<?php  
/* banner.php
     这个PHP3的滚动程序是由 Anton Olsen ( aolsen@graphweb.com )设计的,你可以自由地修改和使用这个程序,并自由地传播它,如果你对它有了比较重要的修改,请你给作都写份E-Mail。

    在这个程序中,作者试图通过多种不同的方法来实现这个功能,但PHP中的图像函数不能显示动画的GIF图片格式及对这种格式的操作(如:fopen, fpassthru, 和 fclose)。作者通过了passthru方法来加以实现,虽然这并不是一种最好的方法,但它可以比别的方法更加快速地显示广告条。

在这个程序中,我们假设:
    1、你已经有了一个存放所有的广告图片的目录。
    2、所有的广告图片都是GIF格式的。
    3、所有的GIF图片都是以banner开头的。
    3、在这个目录中没有其它的除了广告图片的文件。

安装这个程序:
    1、把这个程序和所有的广告图片(*.GIF)放到一个目录中。
    2、把以下这段HTML代码放在你的WEB页面中:
     <a href="wherever.you.want.com">  
     <img src="http://www.yourserver.com/bannerdir/banner.phtml" alt="Random Banner Here" border=0>  
    </a>  

4/14/2000    Mouse Chen( litmouse@km169.net   )    Translate it to Chinese
*/  

/* random( $max integer )  
   返回一个从 0到 $max-1的随机数;  
*/  
function random( $max )  
{  
        $x = rand();  
        $y = getrandmax();  

        $r = $x / $y * ($max -1 );  

        $r = round( $r++ );  
        return $r;  
}  

/*读取目录,把所有的 “banner*”的文件读到一个数组中;*/  
$i = 0;  
$d   = dir( ".");  
while($entry=$d->read())  
        if (substr($entry,0,6) ==  "banner")  
                $array[$i++] = $entry;  
$d->close();  

/* 选取一个随机数 */  
$r = random( $i );  

/* 发送一个 no-cache 和 gif 类型的文件头,并且输出图片。*/  
Header(  "Pragma: no-cache" );  
Header(  "Expires: Monday 01-Jan-80 12:00:00 GMT" );  
Header(  "Content-type:  image/gif");  
passthru(  "cat $array[$r]" );  

?>         

PHP 相关文章推荐
一个用于网络的工具函数库
Oct 09 PHP
PHP中创建空文件的代码[file_put_contents vs touch]
Jan 20 PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
Jun 18 PHP
php读取图片内容并输出到浏览器的实现代码
Aug 08 PHP
php session劫持和防范的方法
Nov 12 PHP
PHP is_subclass_of函数的一个BUG和解决方法
Jun 01 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php for 循环使用的简单实例
Jun 02 PHP
PHP线程的内存回收问题
Jul 08 PHP
YII2框架中excel表格导出的方法详解
Jul 21 PHP
PHP如何防止用户重复提交表单
Dec 09 PHP
下载文件的点击数回填
Oct 09 #PHP
PHP编程之高级技巧——利用Mysql函数
Oct 09 #PHP
动态生成gif格式的图像要注意?
Oct 09 #PHP
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
Oct 09 #PHP
利用递归把多维数组转为一维数组的函数
Oct 09 #PHP
如何在PHP中进行身份认证
Oct 09 #PHP
一个改进的UBB类
Oct 09 #PHP
You might like
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
thinkphp配置连接数据库技巧
2014/12/02 PHP
PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能
2018/05/31 PHP
Laravel如何同时连接多个数据库详解
2019/08/13 PHP
用js实现手把手教你月入万刀(转贴)
2007/11/07 Javascript
javascript向flash swf文件传递参数值注意细节
2012/12/11 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
js的window.showModalDialog及window.open用法实例分析
2015/01/29 Javascript
JQuery自适应窗口大小导航菜单附源码下载
2015/09/01 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
使用JavaScript获取URL中的参数(两种方法)
2016/11/16 Javascript
JS设置时间无效问题的解决办法
2017/02/18 Javascript
vue绑定class与行间样式style详解
2017/08/16 Javascript
vue二级菜单导航点击选中事件的方法
2018/09/12 Javascript
js实现点击展开隐藏效果(实例代码)
2018/09/28 Javascript
jQuery.parseJSON()函数详解
2019/02/28 jQuery
vue实现修改图片后实时更新
2019/11/14 Javascript
Vue+scss白天和夜间模式切换功能的实现方法
2021/01/05 Vue.js
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
[00:32]2018DOTA2亚洲邀请赛VG出场
2018/04/03 DOTA
python 七种邮件内容发送方法实例
2014/04/22 Python
Python中常见的数据类型小结
2015/08/29 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
2021/01/05 Python
乐天旅游香港网站:日本饭店预订
2017/11/29 全球购物
北京SQL新华信咨询
2016/09/30 面试题
保护环境的建议书
2014/03/12 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
我为党旗添光彩演讲稿
2014/09/13 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
2015年前台个人工作总结
2015/04/03 职场文书
2015年数学教师工作总结
2015/05/20 职场文书
2016年万圣节活动总结
2016/04/05 职场文书
小学三年级作文之写景
2019/11/05 职场文书
MySQL Router实现MySQL的读写分离的方法
2021/05/27 MySQL
springboot项目以jar包运行的操作方法
2021/06/30 Java/Android