The random advertisement display code implemented by PHP .? AD; # Set ad code ######## Random ad display ##########
Function myads (){
$ Dir = "ads"; # set the directory for storing records
// $ Dir = "ads"; # set the directory for storing records
$ Ads = "$ dir/ads.txt"; # set the ad code file
$ Log = "$ dir/ads. log"; # set the ip record file
$ Ads_lines = file ($ ads );
$ Lines = count ($ ads_lines); # total number of file lines
#### Total number of ad reads $ ads_count and display times to the array $ 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];
}
}
#### Determine the random display sequence number $ display_rand #####
Srand (double) microtime () * 1000000 );
$ Display_rand = rand (1, $ display_count );
### Determine the ad serial number $ 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 ;}
}
##### Playback advertisement code #########
$ Num = 0;
$ Flag = 0;
For ($ I = 0; $ I <$ lines; $ I ++ ){
If ((! Strcmp (substr ($ ads_lines [$ I],), "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 ;}
}
#### Record the ad display times #########
$ Fp = fopen ($ log, "");
Fputs ($ fp, date ("Y-m-d H: I: s "). getenv ("REMOTE_ADDR "). "=> ". $ ads_num. "\ n ");
Fclose ($ fp );
}
?>
Ad code file ads.txt
######## Each advertisement code is separated by '#'. display indicates the display weight, the larger the display frequency ################
################################
Display = 10
Http://www.mi222.cn>
################################
Display = 10
Http://www.mi222.cn/dh target = _ blank>
Call You can.
Http://www.bkjia.com/PHPjc/318290.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/318290.htmlTechArticle? Php ######### random ad display ########## functionmyads () {$ dir = "ads "; # set the directory for storing records // $ dir = "ads"; # set the directory for storing records $ ads = "$ dir/ads.txt"; # set the ad code file...