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

php使用多個進程同時控制文件讀寫示例

 更新時間:2014年02月28日 09:38:56   作者:  
這篇文章主要介紹了php使用多個進程同時控制文件讀寫示例,需要的朋友可以參考下

復制代碼 代碼如下:

<?php
/**
 * 寫入數(shù)據(jù)
 * @param  [string] $path [文件路徑]
 * @param  [string] $mode [文件打開模式]
 * @param  [string] $data [數(shù)據(jù)]
 * @return [bool]      
 */
function writeData($path, $mode, $data){
       $fp = fopen($path, $mode);
       $retries = 0;
       $max_retries = 100;
       do {
        if ($retries > 0) {
         usleep(rand(1, 10000));
        }
        $retries += 1;
       }while (!flock($fp, LOCK_EX) and $retries <= $max_retries);
       if ($retries == $max_retries) {
        return false;
       }
       fwrite($fp, $data."\r\n");
       flock($fp, LOCK_UN);
       fclose($fp);
       return true;
}


/**
 * 讀數(shù)據(jù)
 * @param  [string] $path [文件路徑]
 * @param  [string] $mode [文件打開模式]
 * @return string     
 */
function readData($path,$mode){
     $fp = fopen($path, $mode);
     $retries = 0;
     $max_retries = 100;
     do {
      if ($retries > 0) {
       usleep(rand(1, 10000));
      }
      $retries += 1;
     }while (!flock($fp, LOCK_SH) and $retries <= $max_retries);
     if ($retries == $max_retries) {
      return false;
     }
     $contents = "";
     while (!feof($fp)) {
        $contents .= fread($fp, 8192);
     }
     flock($fp, LOCK_UN);
     fclose($fp);
     return $contents;
}

writeData('D:/webServer/demo.txt','a+','this is a demo');
echo readData('D:/webServer','r+');

相關文章

  • laravel按天、按小時,查詢數(shù)據(jù)的實例

    laravel按天、按小時,查詢數(shù)據(jù)的實例

    今天小編就為大家分享一篇laravel按天、按小時,查詢數(shù)據(jù)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • PHP自動補全表單的兩種方法

    PHP自動補全表單的兩種方法

    這篇文章主要介紹了PHP自動補全表單的兩種方法,第一種從數(shù)據(jù)庫中檢索之后補全,第二種郵箱等純前端的補全,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • Laravel 5框架學習之路由、控制器和視圖簡介

    Laravel 5框架學習之路由、控制器和視圖簡介

    這篇文章主要介紹了Laravel 5框架學習之路由、控制器和視圖簡介,十分的細致全面,需要的朋友可以參考下
    2015-04-04
  • PHP輸出多個元素的排列或組合的方法

    PHP輸出多個元素的排列或組合的方法

    下面小編就為大家?guī)硪黄狿HP輸出多個元素的排列或組合的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • smarty模板引擎中變量及變量修飾器用法實例

    smarty模板引擎中變量及變量修飾器用法實例

    這篇文章主要介紹了smarty模板引擎中變量及變量修飾器用法,實例分析了smarty模板引擎中常見變量、變量修飾器及常量的具體用法,需要的朋友可以參考下
    2015-01-01
  • CodeIgniter配置之config.php用法實例分析

    CodeIgniter配置之config.php用法實例分析

    這篇文章主要介紹了CodeIgniter配置之config.php用法,結(jié)合實例形式詳細的分析了CodeIgniter中配置文件config.php的參數(shù)含義及具體使用技巧,需要的朋友可以參考下
    2016-01-01
  • Zend Framework框架的校驗器InArray使用示例

    Zend Framework框架的校驗器InArray使用示例

    這篇文章主要介紹了 zf框架的校驗器InArray使用示例框架的校驗器InArray使用示例,需要的朋友可以參考下
    2014-03-03
  • PHP自定義多進制的方法

    PHP自定義多進制的方法

    下面小編就為大家?guī)硪黄狿HP自定義多進制的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • 護衛(wèi)神php套件 php版本升級方法(php5.5.24)

    護衛(wèi)神php套件 php版本升級方法(php5.5.24)

    這篇文章主要介紹了護衛(wèi)神php套件 php版本升級方法(php5.5.24),需要的朋友可以參考下
    2015-05-05
  • php 流程控制switch的簡單實例

    php 流程控制switch的簡單實例

    下面小編就為大家?guī)硪黄猵hp 流程控制switch的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06

最新評論