调整Php-xml代码只需拉出三个元素,而不是全部

时间:2012-08-11 01:37:43

标签: php xml parsing xml-parsing

更新代码

try{
    function processLink( $link , $appendArr ){
    ## gets url from database as outlined above.
        $xmlUrl = $link;
        #Loads the url above into XML    
        $ConvertToXml = simplexml_load_file($xmlUrl);
        # -> Setup XML
        $appendArr[] = $ConvertToXml->channel->item;
    }
    #Connect to DB
    require_once '../../src/conn/dbc.php';
    $dbconn = new PDO('mysql:host=localhost;port=3306;dbname=thedb',$db_user,$db_pass,array(PDO::ATTR_PERSISTENT => true));
    $q = $dbconn->prepare("SELECT FW_ArtSrcLink FROM FW_ArtSrc WHERE OneSet=:OneSet and leagID = :TheLeagueID");
    $q->execute(array(':OneSet' => 1, ':TheLeagueID' => 14));    # SET LEAGUE HERE.
    $result = $q->fetchAll();
    $newsStory = array();
        $title = $newsStory->title;
        $link  = $newsStory->link;
    foreach ($result as $value ){
            if ( is_array($value) ){
                foreach ( $value as $secondValue ){
                    processLink($secondValue , &$newsStory);
                }

                continue;
        }

        processLink($value , $newsStory);

    }                  
    //print_r($newsStory);

        echo 'TITLE: '.$title;
        echo 'LINK'.$link;
}

如何将我的代码修改为只抓取[title][link] - 这意味着它不会输出任何内容::

目前输出: img1

1 个答案:

答案 0 :(得分:1)

答案位于注释部分代码块的底部。

# Source of Article Info-->
#           $SrcTitle=$newsStory[$i]->title;
#           $SrcLink=$newsStory[$i]->link;

使用底部的print_r($newsStory);将打印$newsStory数组中的所有内容。 要打印出标题和链接,请使用代码中提供的示例访问该数组。 您的输出似乎显示该对象的第4个新闻报道。如果你想全部打印它们,你需要一个循环。

for($i=0; $i < count($newsStory); $i++){
    $title = $newsStory[$i]->title;
    $link  = $newsStory[$i]->link;

    //use this next line if you just want to test and see output.
    echo "<p>Newstory $i: Title:$title  Link:$link </p>";

    //use this to provide to a user
    echo "<p><a href='$link'>$title</a></p>";
}
相关问题