ホームページ >バックエンド開発 >PHPチュートリアル >PHPファイルロックに関する簡単な説明

PHPファイルロックに関する簡単な説明

不言
不言オリジナル
2018-04-26 15:28:551911ブラウズ

この記事の内容は、PHP ファイル ロックについての簡単な説明です。必要な友人はそれを参照できます。

ファイル ロックと mysql テーブル ロックの一般的な使用方法。 PHP は、複数の人が同じファイルを同時に操作してデータが失われることを避けるために、同時に操作できるのは 1 人だけです。PHP ファイル ロックの使用方法を紹介します。

ロック メカニズムは、同時実行性によって引き起こされるリソースの競合のために存在します。操作の有効性と整合性を確保するために、ロック メカニズムを使用して同時状態をシリアル状態に変換できます。 PHP のファイル ロックもロック メカニズムの 1 つであり、リソースの競合に対処するように設計されています。大量の同時実行の場合、fwrite を使用してファイルの最後にデータを複数回書き込みます。ロックしないとどうなるでしょうか。複数の順序付けされた書き込み操作は 1 つのトランザクションに相当し、この時点でこのトランザクションの整合性を確保する必要があります。

2 つのプログラムが同時にファイルにデータを書き込む場合、データの整合性を確保するために、ファイル ロックを追加し、プログラム 1 を最初に実行させます。プログラム 1 が実行された後、ロックを解除して実行します。プログラム2を実行します。実装コードは次のとおりです:


$fp = fopen('test.txt',"a");
$count = 10;
if (flock($fp, LOCK_EX)) {
for($i=1;$i<$count;$i++){
fwrite($fp, &#39;text2_&#39;.$i."rn");
echo "test2".date(&#39;h:i:s&#39;) . "
";
sleep(1); 
echo "test2".date(&#39;h:i:s&#39;);
}
flock($fp , LOCK_UN);
}else{
echo "Couldn&#39;t lock the file !";
}
fclose($fp);

関連する推奨事項:

PHP ファイルのロックにより、マルチスレッド書き込みの安全性が確保されます



以上がPHPファイルロックに関する簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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