Вот петля.
foreach($results->results as $result){ echo '<div id="twitter_status">'; echo '<img src="'.$result->profile_image_url.'" class="twitter_image">'; $text_n = $result->text; echo "<div id='text_twit'>".$text_n."</div>"; echo '<div id="twitter_small">'; echo "<span id='link_user'".'<a href="http://www.twitter.com/'.$result->from_user.'">'.$result->from_user.'</a></span>'; $date = $result->created_at; $dateFormat = new DateIntervalFormat(); $time = strtotime($result->created_at); echo "<div class='time'>"; print sprintf('Submitted %s ago', $dateFormat->getInterval($time)); echo '</div>'; echo "</div>"; echo "</div>";
С командой break
.
Однако вам не хватает скобки.
$i=0; foreach($results->results as $result){ //whatever you want to do here $i++; if($i==3) break; }
Подробнее о команде break
: http://php.net/manual/en/control-structures.break.php
Обновление: как заметил Кайл , если вы хотите разбить цикл, лучше использовать его, а не foreach
. В основном у вас больше контроля над потоком, и вы получаете удобочитаемость. Обратите внимание, что вы можете сделать это только в том случае, если элементы массива смежны и индексируются (как указал полковник Спонд )
Код будет выглядеть следующим образом:
for($i=0;$i<3;$i++){ $result = $results->results[i]; //whatever you want to do here }
Он чище, он более устойчив к ошибкам (переменные управления находятся внутри оператора for
), и, просто прочитав его, вы знаете, сколько раз он будет выполнен. break
/ continue
следует избегать, если это возможно.
break
. Вы должны быть осторожны с этой техникой, потому что может быть другой break
/ continue
в каждом теле, но в вашем случае нет, так что это сработает.
Прибавьте некоторый счетчик $i
в начале цикла и break;
когда он достигает 3, например:
if ($i++ == 3) break;
foreach($results->results as $i => $result){ if($i==3) break; //whatever you want to do here }