用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 相关文章推荐
jq的get传参数在utf-8中乱码问题的解决php版
Jul 23 PHP
PHP日期时间函数的高级应用技巧
May 16 PHP
PHP JSON 数据解析代码
May 26 PHP
第4章 数据处理-php字符串的处理-郑阿奇(续)
Jul 04 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
Feb 18 PHP
PHP使用SOAP调用.net的WebService数据
Nov 12 PHP
让PHP显示Facebook的粉丝数量方法
Jan 08 PHP
destoon实现调用图文新闻的方法
Aug 21 PHP
PHP高精确度运算BC函数库实例详解
Aug 15 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
php识别翻转iphone拍摄的颠倒图片
May 17 PHP
如何在centos8自定义目录安装php7.3
Nov 28 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 将图片按创建时间进行分类存储的实现代码
2010/01/05 PHP
php生成4位数字验证码的实现代码
2015/11/23 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
使用Apache的rewrite
2021/03/09 Servers
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
javascript结合CSS实现苹果开关按钮特效
2015/04/07 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
基于JS实现类似支付宝支付密码输入框
2016/09/02 Javascript
VueJs路由跳转——vue-router的使用详解
2017/01/10 Javascript
原生js实现新闻列表展开/收起全文功能
2017/01/20 Javascript
canvas绘制万花筒效果(代码分享)
2017/01/20 Javascript
微信小程序 Toast自定义实例详解
2017/01/20 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
Vue项目使用CDN优化首屏加载问题
2018/04/01 Javascript
为vue-router懒加载时下载js的过程中添加loading提示避免无响应问题
2018/04/03 Javascript
vue单页面实现当前页面刷新或跳转时提示保存
2018/11/02 Javascript
Vue源码探究之虚拟节点的实现
2019/04/17 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
vue实现计算器功能
2020/02/22 Javascript
JavaScript自定义超时API代码实例
2020/04/30 Javascript
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
Python读写及备份oracle数据库操作示例
2018/05/17 Python
python 对key为时间的dict排序方法
2018/10/17 Python
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
GLAMGLOW香港官网:明星出镜前的秘密武器
2017/03/16 全球购物
搬家公司的创业计划书
2014/01/01 职场文书
迎新春趣味活动方案
2014/08/24 职场文书
国庆节活动总结
2014/08/26 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
详解MySQL连接挂死的原因
2021/05/18 MySQL
CentOS 7安装mysql5.7使用XtraBackUp备份工具命令详解
2022/04/12 MySQL
Docker下安装Oracle19c
2022/04/13 Servers
python和Appium的移动端多设备自动化测试框架
2022/04/26 Python