0

学習上の理由からワードプレスプラグインを構築していますが、これが問題のコードです:

// display latest facebook posts
// Init a cURL resource
$ch = curl_init("https://www.facebook.com/feeds/page.php?format=rss20&id=133869316660964");
curl_setopt( $ch, CURLOPT_POST, false );
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
// Make facebook think it is being accessed by a browser to avoid compatability issues
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7");
curl_setopt( $ch, CURLOPT_HEADER, false );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$data = curl_exec( $ch );

// instanciate a new xml element
$fb = new SimpleXMLElement($data);
$i = 0; // set the counter for the foreach loop to 0

echo "<ul>"; // begin the UL

foreach ($fb->channel->item as $item) {
    // foreach item within the tree perform this loop twice
    $link = $item->link; // set the link address
    $post = $item->description; // set the post data
    echo "<li>" . $post, ' :::::: ', '<a href="' . 
    $link . '">' . $link, PHP_EOL . "</a></li>";
    $i++;
    if($i == 2){
        exit();
    }
}
echo "</ul>";

ただし、HTML を調べると、次のように表示されます: (一番下のクイック スニペット)

846656&id=133869316660964
</a></li>

これは、$i =< 2 の foreach ループの最後の部分であるため、exit を使用するとスクリプトが完全に停止しているように見えます。それは正しいですか、それとも別のエラーが原因ですか?

4

2 に答える 2

6

exit();php の実行を停止します。break;を使用してループを終了してみてください

PHP ブレーク

于 2012-12-20T16:01:41.320 に答える
3

ブレークを使用し、終了しない

Exit は、php スクリプトの実行全体を終了します

于 2012-12-20T16:01:57.297 に答える