ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用したファイルのロックとロック解除の例、_PHP チュートリアル
ファイル書き込み操作を実行する場合など、PHP スクリプトでスレッドの安全性の保証が必要になる場合があります。この記事では、ファイルロックの機能と使用例を紹介します。ファイルロック機能を使用して、スクリプト実行時の同期エラーを防ぐために排他的な処理領域を確保することもできます。
関数 lock_thisfile($tmpFileStr,$locktype=false){
if($locktype == false)
$locktype = LOCK_EX|LOCK_NB;
$can_write = 0;
$lockfp = @fopen($tmpFileStr.".lock","w");
if($lockfp){
$can_write = @flock($lockfp,$locktype);
}
if($can_write){
$lockfp を返す;
}
その他{
if($lockfp){
@fclose($lockfp);
@unlink($tmpFileStr.".lock");
}
false を返す;
}
}
/**
*unlock_thisfile: 以前に取得したロック インスタンスのロックを解除します
*@param $fp lock_thisfileメソッドの戻り値
*@param $tmpFileStr は共有ロックファイルとして使用されるファイル名です (任意の名前を付けることができます)
*/
関数unlock_thisfile($fp,$tmpFileStr){
@flock($fp,LOCK_UN);
@fclose($fp);
@fclose($fp);
@unlink($tmpFileStr.".lock");
}
?>