2012-03-30 21 views
0

我讀過一些php文件打開並將信息寫入數據庫的文章。但它有一個分隔符,如|,.php打開,讀取,傳輸到/從mysql數據庫

不過,我有一個處理數字的txt文件,分隔符是數字之間的空格。

例如用戶1與網站12的用戶級和12中的管理狀態:

977970 12 12 

多個用戶的另一個示例:

977970 password 12 12 
100490 password 3 12 

每個新系是用一個新的用戶其個人的細節。

而後半部分就是它需要用新用戶更新文本文件。我確信更新將需要運行一個cron作業。

+1

問題是什麼?想必你試圖實現這一點;你遇到一些問題嗎? – Wyzard 2012-03-30 02:48:18

+1

MySQL在哪裏進來?你只告訴我們解析文本文件和更新文本文件。你需要將文本文件導入到MySQL表中並將其重新導入到文本文件中? – kijin 2012-03-30 02:52:37

回答

0

如果我正確理解問題。您正在嘗試從文件中讀取並存儲到您的記錄通過分隔空間數據庫&我沒有檢查的代碼,但它應該工作,或至少給你一個想法

<?php 
    $data = Array(); 
    $handle = @fopen("/Your/File.txt", "r"); 
    if ($handle) { 
     while (($line = fgets($handle)) !== false) { 
      $data[]= $line;     // read each line and store in array 
     } 
     if (!feof($handle)) { 
      echo "Error"; 
     } 
     fclose($handle); 
     getDelimitedVals($data); 
    } 

您功能分開記錄

function getDelimitedVals($data) { 
     if(empty($data)) { 
      return false; 
     } 
     foreach($data as $line) { 
      $dbData[] = explode(" ", $line);  // this will separate the uname, pwd, id and store in new arry 
     } 

     return dbData; 
    } 
0

要回答第一部分中,有相當數量的方式來解析「東西」分隔的文件,但在這裏是一個非常簡單的解決方案:

$contents = file('filename/goes/here'); 

foreach($contents AS $line) { 
    $values = explode(' ', $line); 
    /** 
    * $values = array(
    *  '977970', 
    *  'password', 
    *  '12', 
    *  '12' 
    * ) 
    */ 
} 
+0

謝謝你們。我在看每一個。 – BBuchanan 2012-03-31 12:33:07

+0

現在,對於文件本身,我應該使用絕對路徑還是需要將它放在Web服務器的根目錄中。 – BBuchanan 2012-04-01 21:09:09