Php 如果使用exit()从嵌套中退出foreach循环将完全停止脚本
出于学习原因,我正在构建wordpress插件,下面是相关代码:Php 如果使用exit()从嵌套中退出foreach循环将完全停止脚本,php,html,loops,foreach,Php,Html,Loops,Foreach,出于学习原因,我正在构建wordpress插件,下面是相关代码: // 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, CURLO
// 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>
这是foreach循环的最后一部分,其中$i=<2,因此使用exit似乎完全停止了脚本,我这样说是否正确,或者是否有其他错误导致此错误?exit;停止php执行。尝试使用break;退出循环
使用break而不是exit
退出终止整个php脚本的执行谢谢,这正是我所需要的:当它允许时,将标记为正确-