2010-04-30 68 views
0

林使我自己的功能來搜索的東西總數。但它不能正常工作。函數getNumberOfCounts獲取$ fromIndex但不是搜索詞爲什麼我不能發送一個字符串,但只有一個數字到成員函數?

public function getNumberOfCounts($searchWord, $fromIndex) 
{  
    $index = $fromIndex; 
    $counter = 0; 

    while($index <= $endPos) 
    { 
     $index++; 

     $pos = strpos($this->text, $searchWord, ($index+1)); 

     if($pos > $index) 
     { 
      $counter++; 

      $index = $pos; 
     } 
     else 
      break; 

    } 

    return $counter; 
} 

public function searchDemo() 
{ 
    $startPos = 11; // ex 

    echo "<br /> count= " . $this->getNumberOfCounts("Lorem", $startPos); 
} 

它們都是同一類c的一部分。

編輯:我知道有一些丟失的信息,但如果我嘗試在getNumberOfCounts的第一行上打印$ searchWord,則不會輸出任何內容。

+0

您必須忽略一些重要的呢。這實際上不可能通過這個字符串。請發佈一個可以按原樣運行的示例來演示問題。 – deceze 2010-04-30 09:03:30

回答

2

你可能有少的問題和性能更好的代碼只是使用

+0

嗯...不是一個壞主意。即時通訊不熟悉PHP文檔,所以感謝提到它:D – Jason94 2010-04-30 09:20:25

2

你從首發位置11,這將是比「排版」的總長度更大開始。其次,在你的while循環,你同時運行startpos < endpos。 $ endpos還沒有被賦值,所以它甚至沒有進入循環。

,而我在這,你在循環的開始遞增指數(可能不希望)。這是通常的索引處的循環結束遞增的情況下,這樣就可以使用索引「索引」的陣列,而不必移動位置。

+0

讀我的編輯...我知道有一些丟失的信息,沒有必要將它張貼所有,因爲我認爲它不相關的。 – Jason94 2010-04-30 09:00:07

相關問題