2011-06-11 75 views
0

我有一長串單詞,我試圖將名詞只輸出到輸出。我試圖做到這一點的方法是:在PHP中並行處理

IF THE WORD IS A PROPER NOUN , JUST PRINT IT { 
// THIS IS DONE USING REGULAR EXPRESSION 
} 
ELSE{ 
// GO TO ONLINE DICTIONARY http://www.thefreedictionary.com/WORD AND SEE IF CHECK IF THE WORD IS NOUN BY HAVING ANOTHER REGULAR EXPRESSION CHECKING FOR THE NOUN IN THE SOURCE CODE OF THIS PAGE 
} 

我有單元測試的其他部分,它對單個單詞工作正常。沒有其他部分,該程序打印4000+字,但是當我集成了其他部分時,程序僅打印大約80個字,這是錯誤的。

有人可以指出問題可能是什麼?是否有一些並行的方式來處理這些請求的許多單詞?

+0

您是否在調用'exit'或'die'或別的東西? – 2011-06-11 00:49:04

+0

不,我打開一個網址來創建一個句柄,然後在else中關閉它 – rkt 2011-06-11 00:53:03

+1

對於我們來說,這和嘗試繪製蒙娜麗莎而不真正看到它一樣困難。 – joakimdahlstrom 2011-06-11 00:55:37

回答

3

有人可以指出問題可能是什麼?

我認爲這是因爲對字典網站的HTTP請求需要時間。

是否有處理這些請求的許多單詞的並行方式?

您可以建立一個沒有匹配的單詞列表,然後在/以後並行處理它。但這不是微不足道的。您可以先使用curl庫或其他多請求組件一次發送多個HTTP請求。

此外,您不需要向一次只能回答一個單詞的網站發送請求,而是可以詢問一個數據庫,該數據庫有很多可以放在系統上的數據庫,如Extracting nouns from a long list of words

0

向服務器發出數千個請求,每個請求單元測試,更不用說現場環境本身,可能很容易讓你被禁止。

試着用其他方式做這個,比如使用靜態字典。它更快,更高效,無風險。