php
  • text
  • 2014-10-29 88 views 0 likes 
    0

    我試圖做一個腳本。重要的是它總是寫在一個文本文檔中,所以我想要做的是計算它在該文檔中寫入了多少次,有些像計算來自DB的行。計算字符串在文件中重複的次數?

    這是可能的嗎?

    $myFile = "log.txt"; 
    $OS = "It is running: "; 
    $ID = "System ID: "; 
    $Skip = "<br />"; 
    $link = '<a href="'; 
    $link2 = '/status.txt"> Click here to view if it is online</a>'; 
    $fh = fopen($myFile, 'a') or die("can't open file"); 
    $menu_text = $_POST['field1']; 
    $menu_text2 = $_POST['field2']; 
    
    if (empty($menu_text2)) { 
        echo "No Data Has Been Posted"; 
        fclose($fh); 
    } 
    else { 
        $stringData = $OS . $menu_text . $Skip . $ID . $menu_text2 . $link . $menu_text2 . $link2 . $Skip; 
        fwrite($fh, $stringData); 
        fclose($fh); 
        print_r($menu_text2); 
        mkdir($menu_text2, 0777); 
    } 
    

    回答

    0
    $file = fopen($myFile, "r"); 
    $count = 0; 
    while($row = fgets($file)) { 
        if(strstr($row, "<br />") !== false) 
         $count ++; 
    } 
    echo $count; 
    
    1

    我看到你在每行的末尾寫了一個<br />。如果$stringData = ...中沒有其他變量,其中有<br />,則可以打開文件並計算<br />發生的次數。

    如果你可能有<br />(你還不如menu_textmenu_text2是用戶輸入的),那麼你也應該在文件中添加一個新行再算上線。請注意,您需要閱讀整個文件才能獲得大文件可能不太好的計數。

    你可以做的另一件事就是將計數存儲在另一個文件中。

    相關問題