ある程度は覚えているのですが、細かな部分を忘れていることも多いので
再利用しやすいようにサンプルを用意しました。
PHPのファイル操作でよく使うパラメータです。
- r
- 読込専用
- w
- 書出専用
- a
- ファイルの最後に追記書込
- r+
- 読込+ファイルの先頭に書込
- w+
- 上書き書込+読込 (ファイルポインタを先頭、 ファイルサイズをゼロにする。 ファイルが存在しない場合には作成)
- a+
- ファイルの最後に追記書込+読込
ファイルロック (書込専用の場合)
if($fp = fopen("lock.txt", "w")){
// 排他ロックを行います
// 共有ロックの場合は、flock($fp, LOCK_SH)
if(flock($fp, LOCK_EX)){
fwrite($fp, "書き込むデータ\n");
flock($fp, LOCK_UN); // ロックを解放します
}
fclose($fp);
}
ファイルロック (読書 可能の場合)
if($fp = fopen("lock.txt", "r+")){
// 排他ロックを行います
// 共有ロックの場合は、flock($fp, LOCK_SH)
if(flock($fp, LOCK_EX)){
// ファイルポインタを先頭に移動
rewind($fp);
// ファイルを切り詰めます(ファイルサイズ0にする)
ftruncate($fp, 0);
fwrite($fp, "データ\n");
flock($fp, LOCK_UN); // ロックを解放します
}
fclose($fp);
}
私が良く使うPHPの書き込み方法を紹介しました。
PHPのマニュアルもご参考ください。
fopen — ファイルまたは URL をオープンする
以上です。
0 件のコメント:
コメントを投稿