Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2019
318
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.78 KB | None | 0 0
  1. $temp = $file.".tmp_".generate_random_name();
  2. touch($temp);
  3.  
  4. $reading = fopen($file, 'r');
  5. $writing = fopen($temp, 'w');
  6.  
  7. $replaced = false;
  8.  
  9. if ((flock($reading, LOCK_EX)) and (flock($writing, LOCK_EX))) {
  10.  
  11.     echo $id.' <span style="color: #00aa00;">SUCCESS: Lock acquired.</span><br>';
  12.  
  13.     while (!feof($reading)) {
  14.  
  15.         $line = fgets($reading);
  16.  
  17.         $values = explode("|",$line);
  18.  
  19.         if ($values[0] == $id) {
  20.  
  21.             $line = $id."|comment edited!".PHP_EOL;
  22.             $replaced = true;
  23.         }
  24.  
  25.         fputs($writing, $line);
  26.     }
  27.  
  28.     flock($reading, LOCK_UN);
  29.     flock($writing, LOCK_UN);
  30.  
  31.     fclose($reading);
  32.     fclose($writing);
  33.  
  34. } else {
  35.  
  36.     echo '<span style="color: #aa0000;">ERROR: Lock not acquired.</span><br>';
  37. }
  38.  
  39. if ($replaced) {
  40.  
  41.     rename($temp, $file);
  42.  
  43. } else {
  44.  
  45.     unlink($temp);
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement