一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP文件鎖定寫入實例解析

PHP文件鎖定寫入實例解析

2020-07-18 14:04shichen2014 PHP教程

這篇文章主要介紹了PHP文件鎖定寫入實例解析,需要的朋友可以參考下

本文以實例講述了PHP文件寫入方法,以應對多線程寫入,具體代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function file_write($file_name, $text, $mode='a', $timeout=30){
  $handle = fopen($file_name, $mode);
  while($timeout>0){
    if ( flock($handle, LOCK_EX) ) { // 排它性的鎖定
      $timeout--;
      sleep(1);
    }
  }
  if ( $timeout > 0 ){
    fwrite($handle, $text.'\n');
    flock($handle, LOCK_UN);
    fclose($handle); //釋放鎖定操作
    return true;
  }
  return false;
}

其中flock(int $handle, int $operation)函數(shù)操作的 handle 必須是一個已經(jīng)打開的文件指針。

operation 可以是以下值之一:

要取得共享鎖定(讀取的程序),將 operation 設為 LOCK_SH(PHP 4.0.1 以前的版本設置為 1)。
要取得獨占鎖定(寫入的程序),將 operation 設為 LOCK_EX(PHP 4.0.1 以前的版本中設置為 2)。
要釋放鎖定(無論共享或獨占),將 operation 設為 LOCK_UN(PHP 4.0.1 以前的版本中設置為 3)。
如果不希望 flock() 在鎖定時堵塞,則給 operation 加上 LOCK_NB(PHP 4.0.1 以前的版本中設置為 4)。

此外, fclose()用來釋放鎖定操作,在代碼執(zhí)行完畢時調(diào)用。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产一区二区三区免费在线视频 | 日本一卡二卡3卡四卡网站精品 | 俄罗斯图书馆无打码久久 | 99re在线精品视频免费 | 亚洲一卡2卡三卡4卡5卡组 | 天堂成人在线视频 | 国产欧美一区二区精品性色 | 成人小视频在线观看 | 精品国产区一区二区三区在线观看 | 2021精品国夜夜天天拍拍 | 亚洲AV无码乱码在线观看浪潮 | 男人在女人下面狂躁 | 日本激情小说 | 亚洲精品午夜久久aaa级久久久 | 乌克兰肛交影视 | 韩国美女主播在线 | 91爱啪 | www.羞羞答答 | 四虎最新永久免费视频 | 国产一区二区三区高清视频 | 波多野结衣xxxx性精品 | 91传媒制片厂制作传媒破解版 | 欧美激情亚洲 | 免费在线观看小视频 | 成人网18免费网站 | 国产9191精品免费观看 | 男人和女人上床 | 农夫成人网 | 性肥胖BWBWBW| videos变态极端 | hd性欧美俱乐部中文 | 国产毛片一级aaaaa片 | 日本不卡视频免费 | 亚洲经典 | 精品久久久久久久久免费影院 | 16男男gaygays | 色老板在线免费视频 | 精品AV无码一二三区视频 | 无限在线观看视频大全免费高清 | 四虎永久在线精品国产 | 免费精品国产在线观看 |