ホームページ >バックエンド開発 >PHPチュートリアル >php_PHP チュートリアルで画像をランダムに表示する複数の方法

php_PHP チュートリアルで画像をランダムに表示する複数の方法

WBOY
WBOYオリジナル
2016-07-13 10:46:07795ブラウズ


$handle = opendir('./') //現在のディレクトリ
; while (false !== ($file = readdir($handle))) { //php チュートリアル ファイルが配置されているディレクトリをトラバースします
list($filesname,$kzm)=explode(".",$file);//拡張子を取得します
if ($kzm=="gif" または $kzm=="jpg") { //ファイルフィルタリング
if (!is_dir('./'.$file)) { //フォルダーフィルタリング
$array[]=$file;//条件を満たすファイル名を配列に保存します
}
}
}
$suiji=array_rand($array); //array_rand関数を使って配列からランダムにユニットを抽出します
?>

例 2

/**********************************************
* ファイル名 : img.php
* 著者:フリーマウス
* ウェブ : www.zhutiai.com * メール :freemouse1981@gmail.com
* 日付: 2010/12/27
* 使用法:
*
*
**********************************************/
if($_GET['フォルダ']){
$folder=$_GET['フォルダ']
}その他{
$folder='/images/'
; }
//画像ファイルが保存される場所
$path = $_SERVER['DOCUMENT_ROOT']."/".$フォルダー
$files=配列(); if ($handle=opendir("$path")) {
while(false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if(substr($file,-3)=='gif' || substr($file,-3)=='jpg') $files[count($files)] = $file; }
}
}
Closedir($handle);

$random=rand(0,count($files)-1); if(substr($files[$random],-3)=='gif') header("Content-type: image/gif"); elseif(substr($files[$random],-3)=='jpg') header("Content-type: image/jpeg"); readfile("$path/$files[$random]"); ?>


readrand.php (このプログラムは実際に Web ページの特殊効果言語を生成します)
$arrayall=file("tp.txt"); tp.txtの内容を配列に読み込みます
$arrays=count($arrayall);

if ($arrays==1){//rand(0,0) が間違っているため

$selectrand=0;
}その他{
srand((double)microtime()*1000000);//乱数シードを設定します
$selectrand=rand(0,$arrays-1);
}
$exstr=explode(chr(9),$arrayall[$selectrand]);//すべての中からランダムに 1 つを選んで分割します
?>
document.write('<? echo $exstr[0];?>');


HTMLファイル


<スクリプト言語='javascript' src='readrand.php'>






(必要な場所に scripty を配置し、setTimeout() 関数を追加して定期的な更新を実現できます)

ランダムな広告コード

#########ランダムな広告表示##########
関数 myads(){
$dir="ads"; #レコードが保存されるディレクトリを設定します
//$dir="ads"; #レコードが保存されるディレクトリを設定します
$ads="$dir/ads.txt"; #広告コードファイルを設定します
$log ="$dir/ads.log"; #IP レコード ファイルを設定します

$ads_lines=ファイル($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),"表示"))){
$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###### を決定します
$プリカウント=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; $フラグ=0;
for($i=0;$i<$lines;$i++){
If((!strcmp(substr($ads_lines[$i],0,7),"表示"))){$num++;}
If(($num==$ads_num)and($flag==0)){$flag=1;続行;}
If(($flag==1)and strcmp($ads_lines[$i][0],"#")){echo $ads_lines[$i];続行;}
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


以下、引用内容です
######各広告コードは「#」で区切られており、表示は表示に重み付けされた数値です。数値が大きいほど、表示される回数が多くなります#####
表示=10
広告 1
###############################
表示=10
広告 2


http://www.bkjia.com/PHPjc/632980.html

www.bkjia.com


tru​​e

http://www.bkjia.com/PHPjc/632980.html

技術記事

? $handle = opendir('./'); //現在のディレクトリ while (false !== ($file = readdir($handle))) { //php チュートリアル ファイルがあるディレクトリを移動します list($filesname ,$kzm )=explode(.,$file);//拡張子を取得...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。