mkdirロック

| コメント(0) | トラックバック(0)

掲示板などで使われるmkdirロック

#★★★★★★★★★★★★★★★★★★★★★#
#★★★		  ファイルロック		  ★★★#
#★★★★★★★★★★★★★★★★★★★★★#
function mkdirLook(){
	global $lock;
	if(file_exists($lock)){
		#ファイルが存在して時間が昔のものなら消しておく。
		$list=(stat($lock));
		$ftime=$list[ctime];
		$mytime=time();
		if($mytime-5>$ftime){mkdirunlock();}
	}
	$retry=5;
	while(file_exists($lock)){
		if($retry==0){
			#ロックに失敗したらエラーを返す。
			return false;
			exit;
		}
		sleep(1);
		$retry--;
	}
	#成功したら
	touch($lock);#空のファイルを作成する
	chmod($lock,0755);
	return true;
}

#★★★★★★★★★★★★★★★★★★★★★#
#★★★ ロック解除 ★★★#
#★★★★★★★★★★★★★★★★★★★★★#
function mkdirunlock() {
global $lock;
if(file_exists($lock)){
unlink($lock);
}
}

トラックバック(0)

トラックバックURL: http://www.adg7.com/mt/mt-tb.cgi/340

コメントする

エントリー一覧

このブログ記事について

このページは、たけうちとおるが2009年6月16日 12:45に書いたブログ記事です。

ひとつ前のブログ記事は「ディレクトリを作成」です。

次のブログ記事は「ディレクトリかどうか調べる」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

OpenID対応しています OpenIDについて