2011-04-14 5 views
-2

내가 배열에 스크립트의 결과를 추가하려고하지만, 나는 그것을 조사하면 아마 나 배치와 바보 되, 거기에 하나의 항목 만이있어한 결과 배열

function crawl_page($url, $depth) 
{ 
    static $seen = array(); 
    $Linklist = array(); 

    if (isset($seen[$url]) || $depth === 0) { 
     return; 
    } 
    $seen[$url] = true; 

    $dom = new DOMDocument('1.0'); 
    @$dom->loadHTMLFile($url); 

    $anchors = $dom->getElementsByTagName('a'); 
    foreach ($anchors as $element) { 
     $href = $element->getAttribute('href'); 
     if (0 !== strpos($href, 'http')) { 
      $href = rtrim($url, '/') . '/' . ltrim($href, '/'); 
     } 
     if(shouldScrape($href)==true) 
     { 
      crawl_page($href, $depth - 1); 
     } 

    } 
    echo "URL:",$url; 
    echo http_response($url); 
    echo "<br/>"; 
    $Linklist[] = $url; 

    $XML = new DOMDocument('1.0'); 
    $XML->formatOutput = true; 

    $root = $XML->createElement('Links'); 
    $root = $XML->appendChild($root); 

    foreach ($Linklist as $value) 
    {  
     $child = $XML->createElement('Linkdetails'); 
     $child = $root->appendChild($child); 

     $text = $XML->createTextNode($value); 
     $text = $child->appendChild($text); 
    }   
    $XML->save("linkList.xml");  
} 
+2

가 어디 배열에 무언가를 추가 끔찍? 무엇이 잘못되었는지 자세히 설명하십시오. 예상 결과는 실제 결과와 어디에서 다른가요? –

답변

0

$Linklist[] = $url;$Linklist 배열에 단일 항목을 추가하십시오. 이 선은 내가 생각하는 루프에 있어야합니다.

0

static $Linklist = array();는 내가 생각하지만, 코드는