欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP文件鎖定寫(xiě)入實(shí)例解析

 更新時(shí)間:2014年07月14日 16:26:55   投稿:shichen2014  
這篇文章主要介紹了PHP文件鎖定寫(xiě)入實(shí)例解析,需要的朋友可以參考下

本文以實(shí)例講述了PHP文件寫(xiě)入方法,以應(yīng)對(duì)多線程寫(xiě)入,具體代碼如下:

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 必須是一個(gè)已經(jīng)打開(kāi)的文件指針。

operation 可以是以下值之一:

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

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

相關(guān)文章

  • php中注冊(cè)器模式類(lèi)用法實(shí)例分析

    php中注冊(cè)器模式類(lèi)用法實(shí)例分析

    這篇文章主要介紹了php中注冊(cè)器模式類(lèi)用法,以實(shí)例形式分析了注冊(cè)器讀寫(xiě)類(lèi)的相關(guān)使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • Laravel實(shí)現(xiàn)隊(duì)列的示例代碼

    Laravel實(shí)現(xiàn)隊(duì)列的示例代碼

    這篇文章主要為大家詳細(xì)介紹了Laravel實(shí)現(xiàn)隊(duì)列的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)和借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)游戲
    2023-02-02
  • PHP獲取特殊時(shí)間戳的方法整理

    PHP獲取特殊時(shí)間戳的方法整理

    時(shí)間在我們?nèi)粘5拇a編寫(xiě)中會(huì)是經(jīng)常出現(xiàn)的篩選或排序條件,尤其是一些特殊時(shí)間節(jié)點(diǎn)的時(shí)間顯得尤為突出。今天對(duì)部分相對(duì)簡(jiǎn)便的方法進(jìn)行了部分整理,需要的可以參考一下
    2023-01-01
  • PHP備份/還原MySQL數(shù)據(jù)庫(kù)的代碼

    PHP備份/還原MySQL數(shù)據(jù)庫(kù)的代碼

    之前是采用PHP讀取數(shù)據(jù)庫(kù)結(jié)構(gòu)和內(nèi)容,然后寫(xiě)文件,這樣可能會(huì)導(dǎo)致導(dǎo)出的文件不一定能百分百導(dǎo)入到MySQL中去,想想之后采用MySQL自帶的導(dǎo)入導(dǎo)出命令最保險(xiǎn)
    2011-01-01
  • PHP使用ODBC連接數(shù)據(jù)庫(kù)的方法

    PHP使用ODBC連接數(shù)據(jù)庫(kù)的方法

    這篇文章主要介紹了PHP使用ODBC連接數(shù)據(jù)庫(kù)的方法,涉及php使用ODBC操作數(shù)據(jù)庫(kù)的基本技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • 詳解PHP中的8個(gè)魔術(shù)常量

    詳解PHP中的8個(gè)魔術(shù)常量

    這篇文章主要介紹了PHP中的8個(gè)魔術(shù)常量的使用方法,文中示例代碼非常詳細(xì),幫助大家更好理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • PHP函數(shù)shuffle()取數(shù)組若干個(gè)隨機(jī)元素的方法分析

    PHP函數(shù)shuffle()取數(shù)組若干個(gè)隨機(jī)元素的方法分析

    這篇文章主要介紹了PHP函數(shù)shuffle()取數(shù)組若干個(gè)隨機(jī)元素的方法,結(jié)合實(shí)例形式詳細(xì)分析了shuffle函數(shù)的功能,定義,使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-04-04
  • PHP實(shí)現(xiàn)提取一個(gè)圖像文件并在瀏覽器上顯示的代碼

    PHP實(shí)現(xiàn)提取一個(gè)圖像文件并在瀏覽器上顯示的代碼

    去年做過(guò)一個(gè)項(xiàng)目,要把用戶上傳的圖像文件列出文字清單,當(dāng)用戶點(diǎn)擊一個(gè)文件名后,就可以顯示這個(gè)圖像.今天有機(jī)會(huì)重新考慮這個(gè)功能,在php手冊(cè)中發(fā)現(xiàn)幾行代碼,簡(jiǎn)潔明快,完全能實(shí)現(xiàn)我要的功能,還不需要GD庫(kù)
    2012-10-10
  • php 常用算法和時(shí)間復(fù)雜度

    php 常用算法和時(shí)間復(fù)雜度

    本篇文章是對(duì)php中的常用算法以及時(shí)間復(fù)雜度進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-07-07
  • PHP7基于curl實(shí)現(xiàn)的上傳圖片功能

    PHP7基于curl實(shí)現(xiàn)的上傳圖片功能

    這篇文章主要介紹了PHP7基于curl實(shí)現(xiàn)的上傳圖片功能,結(jié)合實(shí)例形式對(duì)比分析了php5.5之前與php7版本的curl圖片上傳功能相關(guān)實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下
    2018-05-05

最新評(píng)論