2015-06-30 65 views
0

我使用SIMPLE HTML DOM。 某些頁面需要很長時間 - >然後警告(HTTP請求失敗) - > find()不起作用!致命錯誤! 如何進入下一頁?如何在簡單HTML DOM中使用load_file()時忽略警告?

$items = [...]; 
foreach ($item as $link) { 
    $html = new simple_html_dom(); 
    $html -> load_file($link); 
    if (WHAT SHOULD I WRITE HERE TO START PARSING WHEN $html is OK?) { 
     some parsing 
    } 
} 

回答

0

如果行$html -> load_file($link);是導致頁面超時的行,那麼您可以在下一行中不做任何事情。

也許考慮增加set_time_limit或在foreach循環之前停用它set_time_limit(0)

$items = [...]; 
set_time_limit(300); 
foreach ($item as $link) { 
    $html = new simple_html_dom(); 
    $html -> load_file($link); 
    if (WHAT SHOULD I WRITE HERE TO START PARSING WHEN $html is OK?) { 
     some parsing 
    } 
} 

你應該閱讀set_time_limit documentationmax execution time documentation

請注意,在Web上下文中增加此值可能不是一個好主意。另外,請注意,根據PHP文檔,apache似乎有300秒(5分鐘)的超時時間。

+0

set_time_limit()無法幫助我。最大執行時間超過10秒。我只需要知道 - 我的對象是否適用於函數find()或不適用? –