php
  • simple-html-dom
  • 2014-04-06 1 views 2 likes 
    2

    PHP를 사용하여 내용을 개별적으로 나눌 수 있기 전에 찾고있는 요소 목록을 찾기 위해 simple_html_dom을 사용하고 있습니다. 하나의 숫자이고, 다른 하나는 채널 그대로요소를 찾을 때 내용을 분할하는 방법

    <?xml version='1.0' encoding='UTF-8' ?> 
    <tv generator-info-name="www.mysite.com/test"> 
    <p id='channels'>101 ABC FAMILY</p> 
    <p id='channels'>102 CBS</p> 
    <p id='channels'>103 CNN USA</p> 
    <p id='channels'>105 ESPN USA</p> 
    <p id='channels'>106 Fox News</p> 
    <p id='channels'>107 Animal Planet</p> 
    

    I는 두 개의 서로 다른 변수에 콘텐츠를 분할 할 : 여기

    가 출력된다. 여기에 당신이 말해 줄 수는 PHP

    <?php 
    ini_set('max_execution_time', 300); 
    $errmsg_arr = array(); 
    $errflag = false; 
    $link; 
    include ('simple_html_dom.php'); 
    $xml = "<?xml version='1.0' encoding='UTF-8' ?>"; 
    $xml = '<tv generator-info-name="www.mysite.com/test">'; 
    $base1 = "http://www.mysite.com/get-listing.php"; 
    $html = file_get_html($base1);  
    
    foreach($html->find('p[id=channels]') as $element) 
    { 
        echo $xml; 
        echo $element; 
    } 
    ?> 
    

    입니다

    ABC FAMILY 
    CBS 
    CNN USA 
    ESPN USA 
    Fox News 
    Animal Planet 
    

    :

    나는 이런 식으로 숫자를 분할 할 :

    101 
    102 
    103 
    105 
    106 
    107 
    

    그리고 채널을 분할 할 내가 두 개의 다른 변수를 사용할 수있게 해주고 싶은 내용을 어떻게 나눌 수 있는가? 하나는 숫자이고 다른 하나는 f이다. 또는 채널?

    +1

    php에는 "regexp"또는 정규 표현식이라는 강력한 도구가 있습니다. 이것은 훌륭한 튜토리얼 사이트입니다 : http://www.regular-expressions.info/ – RobP

    +0

    @RobP 정규 표현식과 함께 사용하는 방법을 모르겠습니다. 그렇다면 PHP를 사용해야하는지 어떨까요? –

    +0

    폭발은 원하는대로 할 수 있지만 가능한 오류에 대한 내구성이 떨어지고 모든 공간에서 중단되므로 "103 CNN USA"는 [ "103", "CNN", "USA"]가됩니다. 당신은 어떤 문자열이 남아 있는지에 따라 공백 문자가 뒤 따르는 일련의 숫자로 나누기를 원한다. regexp는 훨씬 더 깔끔하게 그것을 할 것이다. 이러한 종류의 응용 프로그램을 빌드하려면 regexp를 배워야합니다. – RobP

    답변

    1
    foreach($html->find('p[id=channels]') as $element) 
    { 
        $channelstr = $element->innertext; 
        preg_match('/(\d+) (.*)/', $channelstr, $matches); 
        echo $matches[1]; 
        echo $matches[2]; 
    } 
    

     관련 문제

    • 관련 문제 없음^_^