2015-01-30 2 views
-2

Simple_Html_Dom 파서를 사용하여 NBA 통계를위한 웹 페이지를 구문 분석하려고합니다. 다른 URL을 많이 가지고 있지만 동일한 데이터를 파싱 할 것이므로 함수를 만들 것이라고 생각했습니다. 함수 밖에서는이 구문 분석기가 훌륭하게 작동하지만 구문 분석을 함수 내부에 배치하자 마자 연결 오류가 발생합니다. 그냥 궁금해서, 왜 누군가가 함수 안에 file_get_html을 실행할 수 없는지 안다면. 아래 코드는 다음과 같습니다. 도와주세요!Simple_Html_Dom 파서가 함수 내에서 작동하지 않습니다.

include('simple_html_dom.php'); 

$nbaPlayers = 'playerstats/15/1/eff/1-2'; 

function nbaStats($url){ 
    $html = 'http://www.hoopsstats.com/basketball/fantasy/nba/'; 
    $getHtml = $html . $url; 
    $a = file_get_html("$getHtml"); 

    foreach($a->find('.statscontent tbody tr') as $tr){ 
     $nbaStatLine = $tr->find('td'); 
     $nbaName = $nbaStatLine[1]->plaintext; 
     $nbaGamesPlayed = $nbaStatLine[2]->plaintext; 
     $nbaMinuesPlayed = $nbaStatLine[3]->plaintext; 
     $nbaTotalPoints = $nbaStatLine[4]->plaintext; 
     $nbaRebounds = $nbaStatLine[5]->plaintext; 
     $nbaAssists = $nbaStatLine[6]->plaintext; 
     $nbaSteals = $nbaStatLine[7]->plaintext; 
     $nbaBlocks = $nbaStatLine[8]->plaintext; 
     $nbaTurnovers = $nbaStatLine[9]->plaintext; 
     $nbaoRebounds = $nbaStatLine[11]; 
     $nbadRebounds = $nbaStatLine[12]; 
     $nbaFieldGoals = $nbaStatLine[13]; 
     $nbaFieldGoals = explode("-", $nbaFieldGoals); 
     $nbaFieldGoalsMade = $nbaFieldGoals[0]; 
     $nbaFieldGoalsAttempted = $nbaFieldGoals[1]; 
     // Player Stat Line 
     $playerStats = $nbaName . ': gp - ' . $nbaGamesPlayed . ' mp - ' . $nbaMinutesPlayed . ' pts - ' . $nbaTotalPoints . ' rb - ' . $nbaRebounds . ' as - ' . $nbaAssists . ' s - ' . $nbaSteals . ' bl - ' . $nbaBlocks . ' to - ' . $nbaTurnovers; 

     echo $playerStats . '<br /><br />'; 
    } 
} 
nbaStats($nbaPlayers); 

답변

0

변수를 함수에 전달할 때 변수를 따옴표로 묶을 필요가 없습니다. 인용문은 텍스트를 함수에 직접 전달하거나 텍스트를 변수에 할당 할 때 사용됩니다.

변경이 : 여기에

$a = file_get_html("$getHtml"); 

: 추천에 대한

$a = file_get_html($getHtml); 
+0

감사합니다,하지만 난 이미 아무 소용이 두 가지를 시도했습니다. 귀하의 게시물과 아직도 좋은 후 다시 시도했다. 내 로컬 wamp 서버 응용 프로그램이 충돌하고 여전히 연결 오류가 발생합니다. – soulglow1985

+0

내가 게시 한 것 이외에도 뭔가 잘못되었을 수 있지만 변수를 문자열로 전달하려고한다는 사실은 확실히 문제의 일부입니다. PHP에는 타입 시스템이라고하는 것이 있습니다 (많은 언어 에서처럼). 변수 이름을 인용 부호로 싸인 사실은 PHP가 "$ getHTML"이 요청을 보내려는 URL이라고 믿게 만듭니다. – user3213323