用PHP实现的随机广告显示代码


Posted in PHP onJune 14, 2007

<?php 
#########随机广告显示##########  
function myads(){ 
$dir="ads";   #设置存放记录的目录  
//$dir="ads";   #设置存放记录的目录  
$ads="$dir/ads.txt"; #设置广告代码文件 
$log ="$dir/ads.log"; #设置ip记录文件 

$ads_lines=file($ads); 
$lines=count($ads_lines);#文件总行数 

####读出广告总数$ads_count和显示次数到数组$display_array######## 
$ads_count=0; 
$display_count=0; 
for ($i=0;$i<$lines;$i++){ 
    if((!strcmp(substr($ads_lines[$i],0,7),"display"))){ 
        $ads_count+=1; 
        $display_array[$ads_count]=substr($ads_lines[$i],8); 
        $display_count+=$display_array[$ads_count]; 
        } 

####决定随机显示序号$display_rand##### 
srand((double)microtime()*1000000); 
$display_rand = rand(1,$display_count); 

###决定广告序号$ads_num###### 
$pricount=0; 
$ads_num=1; 
for($i=1; $i<=$ads_count; $i++) { 
  $pricount += $display_array[$i]; 
  if ($display_rand<=$pricount) {$ads_num=$i;break;} 

#####播放广告代码######### 
$num=0; 
$flag=0; 

for($i=0;$i<$lines;$i++){ 
    if((!strcmp(substr($ads_lines[$i],0,7),"display"))){$num++;} 
    if(($num==$ads_num)and($flag==0)){$flag=1;continue;} 
    if(($flag==1)and strcmp($ads_lines[$i][0],"#")){echo $ads_lines[$i];continue;} 
    if(($flag==1)and(!(strcmp($ads_lines[$i][0],"#")))){break;} 

####纪录广告显示次数######### 
$fp=fopen($log,"a"); 
fputs($fp,date( "Y-m-d H:i:s " ).getenv("REMOTE_ADDR")."==>".$ads_num."\n"); 
fclose($fp); 

?> 

广告代码文件ads.txt 

########每个广告代码之间用'#'隔开,display为显示加权数,越大显示次数越多################ 
################################ 
display=10 

<a href=http://www.mi222.cn>  
<img src="http://www.mi222.cn/logo.gif" alt="米儿网络欢迎您!"> </a> 
################################ 
display=10 

<a href=http://www.mi222.cn/dh target=_blank> 
<img src="http://www.mi222.cn/dh/QQCF_Pic/logo.gif" width="120" height="60" alt="米儿网址导航,网站免费登陆" border="0"></a> 

调用<?php myads();?>即可

PHP 相关文章推荐
深入PHP获取随机数字和字母的方法详解
Jun 06 PHP
php实现统计邮件大小的方法
Aug 06 PHP
非常实用的PHP常用函数汇总
Dec 17 PHP
PHP生成压缩文件实例
Feb 07 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
Mar 23 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
Jul 09 PHP
WordPress过滤垃圾评论的几种主要方法小结
Jul 11 PHP
PHP多进程编程之僵尸进程问题的理解
Oct 15 PHP
从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解
Apr 03 PHP
Laravel框架Blade模板简介及模板继承用法分析
Dec 03 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
Mar 26 PHP
Yii框架组件的事件机制原理与用法分析
Apr 07 PHP
PHP生成月历代码
Jun 14 #PHP
用PHP实现图象锐化代码
Jun 14 #PHP
PHP静态新闻列表自动生成代码
Jun 14 #PHP
discuz安全提问算法
Jun 06 #PHP
PHP5.2下chunk_split()函数整数溢出漏洞 分析
Jun 06 #PHP
phpMyAdmin下载、安装和使用入门教程
May 31 #PHP
测试您的 PHP 水平的题目
May 30 #PHP
You might like
windows xp下安装pear
2006/12/02 PHP
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
2013/06/17 PHP
使用PHP实现Mysql读写分离
2013/06/28 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
php微信公众平台配置接口开发程序
2016/09/22 PHP
PHP下 Mongodb 连接远程数据库的实例代码
2017/08/30 PHP
JavaScript 设计模式之组合模式解析
2010/04/09 Javascript
jquery乱码与contentType属性设置问题解决方案
2013/01/07 Javascript
目前流行的JavaScript库的介绍及对比
2013/09/29 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
现代 JavaScript 开发编程风格Idiomatic.js指南中文版
2014/05/28 Javascript
angularjs中的e2e测试实例
2014/12/06 Javascript
jQuery中hasClass()方法用法实例
2015/01/06 Javascript
JavaScript数据推送Comet技术详解
2016/04/07 Javascript
webpack分离css单独打包的方法
2018/06/12 Javascript
vue实现类似淘宝商品评价页面星级评价及上传多张图片功能
2018/10/29 Javascript
使用vue中的混入mixin优化表单验证插件问题
2019/07/02 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
2020/09/17 Javascript
Vue+Java+Base64实现条码解析的示例
2020/09/23 Javascript
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
Python hashlib模块用法实例分析
2018/06/12 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
Python 2种方法求某个范围内的所有素数(质数)
2020/01/31 Python
django日志默认打印request请求信息的方法示例
2020/05/17 Python
英国时尚家具、家居饰品及礼品商店:Graham & Green
2016/09/15 全球购物
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
Theflamel意大利:女士奢华服装、鞋子和配件
2020/01/11 全球购物
网络优化专员求职信
2014/05/04 职场文书
大学生作弊检讨书
2014/09/11 职场文书
2014最新实习证明模板
2014/10/02 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
安全教育片观后感
2015/06/17 职场文书