이 코드는 몇 달 동안 잘 작동 해 왔습니다. 출력은 주어진 사용자 이름에 대한 통계를 포함하는 몇 줄로 구성됩니다. html 페이지를 가져온 웹 사이트는 다운되지 않으며 file_get_html
에있는 페이지의 내용은 변경되지 않았습니다. 갑자기 (내가 확인하고 아무도 수정하지 않았다) 작동을 멈췄다. 여기에 관련 부분입니다 :simple_html_dom : 객체가 아닌 객체에서 find() 함수 호출
[...]if ($FileAge > ($expiretime * 60) || 0 == filesize($cachename))
{
include_once('simple_html_dom.php');
$html = file_get_html('http://www.foo.com/search?what=user%3A'.YOUR_USER.'&search=Search');
var_dump($html); //TEST
$link = $html->find('.likeh4 lightGrey.', 0)->find('a', 0)->href; // Get the last activity link
[...]
오류 로그는 말한다 :
[02-Feb-2013 17:02:19 Europe/Berlin] PHP Fatal error: Call to a member function find() on a non-object in /foo.php on line 22 (the line with $link).
var_dump($html)
내가 다른 웹 사이트에서 HTML 페이지를 구문 분석 유사한 스크립트가 bool(false)
을 제공합니다. 그것도 잘 작동하지 않았다.
[...]include_once('simple_html_dom.php');
$html = file_get_html('http://my.flightmemory.com/'.FLIGHTMEMORY_USER);
$chilometri_table = $html->find('table', 2); [...]
내 웹 서버에 HTML 페이지 중 하나를 저장하려고 시도했지만 이러한 오류가 발생하지 않았습니다. 내 호스트가 보안상의 이유로 일부 php 기능을 비활성화 했습니까? (실제로 file_get_html은 PHP 기본 기능이 아니라 simple_html_dom에서 가져온 것입니다.)
힌트가 있습니까? 감사