©
                    本文档使用
                    php中文网手册 发布
                
(PHP 5 >= 5.1.0)
SplFileObject::flock — Portable file locking
$operation 
   [,  int &$wouldblock 
  ] )Locks or unlocks the file in the same portable way as flock() .
operation  operation is one of the following:
       
LOCK_SH  to acquire a shared lock (reader).
          LOCK_EX  to acquire an exclusive lock (writer).
          LOCK_UN  to release a lock (shared or exclusive).
          LOCK_NB  to not block while locking (not supported on Windows).
          wouldblock 
       Set to  TRUE  if the lock would block (EWOULDBLOCK errno condition).
      
   成功时返回  TRUE , 或者在失败时返回  FALSE 。
  
Example #1 SplFileObject::flock() example
  <?php
$file  = new  SplFileObject ( "/tmp/lock.txt" ,  "w" );
if ( $file -> flock ( LOCK_EX )) {  // do an exclusive lock
     $file -> ftruncate ( 0 );      // truncate file
     $file -> fwrite ( "Write something here\n" );
     $file -> flock ( LOCK_UN );    // release the lock    
 } else {
    echo  "Couldn't get the lock!" ;
}
 ?>   
[#1] digitalprecision at gmail dot com [2010-12-24 14:48:29]
For the record, the example given here has an explicit command to truncate the file, however with a 'write mode' of 'w', it will do this for you automatically, so the truncate call is not needed.