用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 相关文章推荐
Windows下的PHP5.0安装配制详解
Sep 05 PHP
实时抓取YAHOO股票报价的代码
Oct 09 PHP
修改Zend引擎实现PHP源码加密的原理及实践
Apr 14 PHP
提高PHP编程效率的53个要点(经验小结)
Sep 04 PHP
session在PHP大型web应用中的使用
Jun 25 PHP
PHP处理JSON字符串key缺少双引号的解决方法
Sep 16 PHP
php读取远程gzip压缩网页的方法
Dec 29 PHP
php编写的一个E-mail验证类
Mar 25 PHP
PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
May 06 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
May 19 PHP
Laravel实现通过blade模板引擎渲染视图
Oct 25 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 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
php数组函数序列之array_pop() - 删除数组中的最后一个元素
2011/11/07 PHP
使用phpQuery采集网页的方法
2013/11/13 PHP
php实现留言板功能
2017/03/05 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
2020/03/26 PHP
JavaScript 异步调用框架 (Part 1 - 问题 &amp; 场景)
2009/08/03 Javascript
Dojo 学习要点
2010/09/03 Javascript
Dom在ajax技术中的作用说明
2010/10/25 Javascript
在Ajax中使用Flash实现跨域数据读取的实现方法
2010/12/02 Javascript
nodejs实用示例 缩址还原
2010/12/28 NodeJs
Javascript实现苹果悬浮虚拟按钮
2016/04/10 Javascript
在javascript中创建对象的各种模式解析
2016/05/16 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
功能强大的Bootstrap使用手册(一)
2016/08/02 Javascript
bootstrapValidator自定验证方法写法
2016/12/01 Javascript
详谈angularjs中路由页面强制更新的问题
2017/04/24 Javascript
Vue实现数字输入框中分割手机号码的示例
2017/10/10 Javascript
Angular实现可删除并计算总金额的购物车功能示例
2017/12/26 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
Vuex mutitons和actions初使用详解
2019/03/04 Javascript
vue实现简单图片上传
2020/06/30 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
在python中将list分段并保存为array类型的方法
2019/07/15 Python
Python中使用threading.Event协调线程的运行详解
2020/05/02 Python
python怎么提高计算速度
2020/06/11 Python
python 爬虫请求模块requests详解
2020/12/04 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
2021/02/07 Python
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
ktv收银员岗位职责
2013/12/16 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书
vue+iview实现手机号分段输入框
2022/03/25 Vue.js