我需要鎖定文件,讀取數據,寫入文件然後關閉它。我有的問題是我試圖找到fopen的正確模式。Fopen,fread和羊羣
'a +' - 總是追加數據,'w +'在打開時截斷所有數據,'x +'無法鎖定文件。
這是我的代碼:
$fh_task = fopen($task_file, 'w+');
flock($fh_task, LOCK_EX) or die('Cant lock '.$task_file);
$opt_line = '';
while(!feof($fh_task)){
$opt_line .= fread($fh_task, 4096);
}
$options = unserialize($opt_line);
$options['procceed']++;
rewind($fh_task);
fwrite($fh_task, serialize($options));
flock($fh_task, LOCK_UN);
fclose($fh_task);
alexy13,感謝編輯,我的英語很糟糕-____- – Kein 2011-04-15 22:12:32