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 相关文章推荐
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
php minixml详解
Jul 19 PHP
神盾加密解密教程(一)PHP变量可用字符
May 28 PHP
PHP has encountered a Stack overflow问题解决方法
Nov 03 PHP
ThinkPHP框架设计及扩展详解
Nov 25 PHP
php实现每天自动变换随机问候语的方法
May 12 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
PHP技术开发微信公众平台
Jul 22 PHP
weiphp微信公众平台授权设置
Jan 04 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
Feb 07 PHP
php strftime函数获取日期时间(switch用法)
May 16 PHP
Yii 框架入口脚本示例分析
May 19 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 Redis内存占用
2017/03/23 PHP
Thinkphp5结合layer弹窗定制操作结果页面
2017/07/07 PHP
PHP+redis实现的购物车单例类示例
2019/02/02 PHP
showModalDialog 和 showModelessDialog
2007/01/22 Javascript
JS处理VBArray的函数使用说明
2008/05/11 Javascript
ExtJS 2.0实用简明教程 之Border区域布局
2009/04/29 Javascript
Js sort排序使用方法
2011/10/17 Javascript
jQuery实现页面滚动时层智能浮动定位实例探讨
2013/03/29 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
详解nodejs 文本操作模块-fs模块(二)
2016/12/22 NodeJs
如何提高Dom访问速度
2017/01/05 Javascript
利用angularjs1.4制作的简易滑动门效果
2017/02/28 Javascript
详解vue-cli脚手架build目录中的dev-server.js配置文件
2017/11/24 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
解决angularjs WdatePicker ng-model的问题
2018/09/13 Javascript
Vue.js组件实现选项卡以及切换特效
2019/07/24 Javascript
vue eslint简要配置教程详解
2019/07/26 Javascript
p5.js实现故宫橘猫赏秋图动画
2019/10/23 Javascript
[06:14]《辉夜杯》外卡赛附加赛 4支战队巡礼
2015/10/23 DOTA
[54:27]TNC vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python的Django框架中的Context使用
2015/07/15 Python
Python基于tkinter模块实现的改名小工具示例
2017/07/27 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
Python 限制线程的最大数量的方法(Semaphore)
2019/02/22 Python
python logging 日志的级别调整方式
2020/02/21 Python
python如何停止递归
2020/09/09 Python
LODI女鞋在线商店:阿利坎特的鞋类品牌
2019/02/15 全球购物
采购求职信
2014/03/17 职场文书
好学生评语大全
2014/05/05 职场文书
小学生个人先进事迹材料
2014/05/08 职场文书
公司出纳岗位职责
2015/03/31 职场文书
pytorch 实现变分自动编码器的操作
2021/05/24 Python
MySQL 四种连接和多表查询详解
2021/07/16 MySQL
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL