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 相关文章推荐
删除无限级目录与文件代码共享
Jul 12 PHP
PHP中路径问题的解决方案
Oct 09 PHP
PHP函数篇之掌握ord()与chr()函数应用
Dec 05 PHP
php MessagePack介绍
Oct 06 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
May 04 PHP
Yii使用find findAll查找出指定字段的实现方法
Sep 05 PHP
php随机生成数字字母组合的方法
Mar 18 PHP
实例简介PHP的一些高级面向对象编程的特性
Nov 27 PHP
PHP实现上传图片到 zimg 服务器
Oct 19 PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 PHP
PHP实现随机生成水印图片功能
Mar 22 PHP
使用composer 安装 laravel框架的方法图文详解
Aug 02 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实现插入数组但不影响原有顺序的方法
2015/03/27 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
PHP 获取指定地区的天气实例代码
2017/02/08 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
javascript跑马灯悬停放大效果实现代码
2012/12/12 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
js使用eval解析json实例与注意事项分享
2014/01/18 Javascript
基于js实现投票的实例代码
2015/08/04 Javascript
跟我学习javascript的执行上下文
2015/11/18 Javascript
jQuery Mobile页面返回不需要重新get
2016/04/26 Javascript
jquery实现左右无缝轮播图
2020/07/31 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
javascript 操作cookies详解及实例
2017/02/22 Javascript
微信小程序实现带刻度尺滑块功能
2017/03/29 Javascript
webpack 1.x升级过程中的踩坑总结大全
2017/08/09 Javascript
vue-cli中的babel配置文件.babelrc实例详解
2018/02/22 Javascript
element el-input directive数字进行控制
2018/10/11 Javascript
在移动端使用vue-router和keep-alive的方法示例
2018/12/02 Javascript
详解使用React制作一个模态框
2019/03/14 Javascript
Javascript实现一朵从含苞到绽放的玫瑰
2019/03/30 Javascript
vue 点击展开显示更多(点击收起部分隐藏)
2019/04/09 Javascript
JavaScript 作用域scope简单汇总
2019/10/23 Javascript
用Python徒手撸一个股票回测框架搭建【推荐】
2019/08/05 Python
python中bytes和str类型的区别
2019/10/21 Python
vue常用指令代码实例总结
2020/03/16 Python
详解使用canvas保存网页为pdf文件支持跨域
2018/11/23 HTML / CSS
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
音乐节策划方案
2014/06/09 职场文书
公司总经理岗位职责范本
2014/08/15 职场文书
党的群众路线教育实践活动总结大会主持词
2014/10/30 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
2015年教学副校长工作总结
2015/07/22 职场文书
教你使用pyinstaller打包Python教程
2021/05/27 Python
node.js使用express-fileupload中间件实现文件上传
2021/07/16 Javascript
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技