随机广告显示(PHP函数)_php基础

<?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://china.chance2mail.com/cgi-bin/regstep1.cgi?myid=CC00099599">  
<img src=https://yunqi-tech.oss-cn-hangzhou.aliyuncs.com/c_banner.gif alt="Chance2mail,好礼物送给您!"> </a>
################################
display=10

<a href="http://www.my8848.net/agtunion/agtredirect.asp?act=homepage&agtid=2986" target=_blank>
<img src=https://yunqi-tech.oss-cn-hangzhou.aliyuncs.com/8848.gif width="468" height="60" alt="欢迎到My8848网站购物" border="0"></a>

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

时间: 2024-09-01 20:18:39

随机广告显示(PHP函数)_php基础的相关文章

随机广告显示(PHP函数)

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

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

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

php中随机广告显示调用代码

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

PHP数组的定义、初始化和数组元素的显示实现代码_php基础

从ASP初入门到PHP,感觉到PHP的强大之一就是内置函数的丰富,比如先前学习的PHP日期时间函数,读写文件的相关函数等都无不表明了PHP的更专业.更令用户的使用得心应手. 一开始我对PHP函数的丰富功能很兴奋,随着对越来越多近乎变态多的函数接触之后,突然联想到了ASP内置函数的稀少,要完成某项特殊功能,常须自定义函数,随着应用的在增多,自己居然也有了一套常用的函数库.然而现在在PHP中,这些功能早已被标准化.规范化而浓缩为内置函数直接使用,曾经的ASP开发人员成为了PHP的普通用户. 但转念一

PHP4(windows版本)中的COM函数_php基础

PHP4(windows版本)中的COM函数 这几天一直在写excel转化成mysql,发现一篇文章,搜一下phpx论坛,没有这个帖子,把它转帖如下: PHP4(windows版本)中的COM函数 介绍 内置于PHP4里的COM函数对于我们在win32环境下开发程序是相当有吸引力的,但是至今仍没有多少相关的技术文档.本文将以三个例子分 别处理 MS office 2000 Word . Excel . Adobe Distiller 来说明如何在PHP中使用COM函数. COM技术是由Micro

PHP 的几个配置文件函数_php基础

php 的配置函数就是几个ini_*的函数,主要是针对配置文件的操作,其实就四个函数:ini_get.ini_set.ini_get_all.ini_restore.个人感觉最有用的就是ini_set和ini_get.     * ini_get():获取配置文件的选项值     这个函数相信很多人都使过,就是获取配置文件中某一个选项的值,如果是true值就返回1,如果是false值就返回0,字符串就返回字符串.     比如手册中的例子:     〈?php     /*     Our ph

PHP操作mysql函数详解,mysql和php交互函数_php基础

1. 建立和关闭连接 1) mysql_connect() resource mysql_connect([string hostname [:port][:/path/to/socket][,string username] [,string password]]) 所有参数都是可选的 举例: @mysql_connect("localhost", "user", "password") or die("Could not conne

php strstr查找字符串中是否包含某些字符的查找函数_php基础

PHP 判断字符串是否包含其它字符 以下几个函数均可用来判断某字符串是否包含另外一个字符串PHP 中判断一个字符串是否包含其它字符是很常见的操作. 虽然很简单,但还是写了几个函数,质量可能不是很高,权当锻炼. 如果这几个函数恰好能帮上你的忙,我将会很高兴的.这几个函数中,我比较喜欢第四个... 复制代码 代码如下: <?php /** * 以下几个函数均可用来判断某字符串是否包含另外一个字符串 * PHP 中判断一个字符串是否包含其它字符是很常见的操作. * 虽然很简单,但还是写了几个函数,质量

一些常用的php函数_php基础

1.产生随机字符串函数  <?php  function random($length) {   $hash = '';   $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';   $max = strlen($chars) - 1;   mt_srand((double)microtime() * 1000000);   for($i = 0; $i < $length; $i++) {