用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 相关文章推荐
模仿OSO的论坛(三)
Oct 09 PHP
PHP中MD5函数使用实例代码
Jun 07 PHP
Apache 配置详解(最好的APACHE配置教程)
Jul 04 PHP
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
May 02 PHP
PHP异常Parse error: syntax error, unexpected T_VAR错误解决方法
May 06 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
Aug 22 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
Nov 08 PHP
详解PHP实现执行定时任务
Dec 21 PHP
详解js异步文件加载器
Jan 24 PHP
Yii中CArrayDataProvider和CActiveDataProvider区别实例分析
Mar 02 PHP
使用phpQuery获取数组的实例
Mar 13 PHP
在Laravel中使用GuzzleHttp调用第三方服务的API接口代码
Oct 15 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 XML error parsing SOAP payload on line 1
2010/06/17 PHP
php目录操作函数之获取目录与文件的类型
2010/12/29 PHP
简单的PHP多图上传小程序代码
2011/07/17 PHP
php将csv文件导入到mysql数据库的方法
2014/12/24 PHP
php示例详解Constructor Prototype Pattern 原型模式
2015/10/15 PHP
php使用环形链表解决约瑟夫问题完整示例
2018/08/07 PHP
5 cool javascript apps
2007/03/24 Javascript
兼容FireFox 的 js 日历 支持时间的获取
2009/03/04 Javascript
javascript:void(0)的作用示例介绍
2013/10/28 Javascript
ExtJS4给Combobox设置列表中的默认值示例
2014/05/02 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
AngularJS创建自定义指令的方法详解
2016/11/03 Javascript
原生JS实现跑马灯效果
2017/02/20 Javascript
React实践之Tree组件的使用方法
2017/09/30 Javascript
使用Vue自定义数字键盘组件(体验度极好)
2017/12/19 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
2018/12/05 Javascript
python新手经常遇到的17个错误分析
2014/07/30 Python
深入理解Django的中间件middleware
2018/03/14 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
python 统计数组中元素出现次数并进行排序的实例
2018/07/02 Python
python的pygal模块绘制反正切函数图像方法
2019/07/16 Python
python中for in的用法详解
2020/04/17 Python
Python爬虫实现vip电影下载的示例代码
2020/04/20 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
python Paramiko使用示例
2020/09/21 Python
python实现登录与注册系统
2020/11/30 Python
英国在线泳装店:Simply Swim
2019/05/05 全球购物
FC-Moto美国:欧洲最大的摩托车服装和头盔商店之一
2019/08/24 全球购物
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
护士2015年终工作总结
2015/04/29 职场文书
2019年聘任书的写作格式及范文!
2019/07/03 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers
Python+Appium新手教程
2021/04/17 Python
Python中X[:,0]和X[:,1]的用法
2021/05/10 Python
Django模型层实现多表关系创建和多表操作
2021/07/21 Python