ファイル書き込み時はrewindを忘れないこと
<?php $fp = fopen($file_path, 'rb+'); $cnt = 0; if ($fp !== false && flock($fp, LOCK_EX)) { $cnt = trim(fgets($fp)); ftruncate($fp, 0); // rewindを忘れないこと rewind($fp); fwrite($fp, empty($cnt) ? 1 : ++$cnt); flock($fp, LOCK_UN); fclose($fp); }
単純にファイルの値をカウントアップするプログラム。rewindが抜けていたため最初に余計な制御文字が入ってしまっていた。今後注意すること。