Как ограничить цикл foreach тремя контурами
как ограничить этот цикл. Просто ваши петли.. помогите
<?php
foreach($section['Article'] as $article) :
?>
<tr>
<td>
<?php
if ($article['status'] == 1) {
echo $article['title'];
}
?>
</td>
<td>
<?php
if($article['status']== 1) {
echo ' '.$html->link('View', '/articles/view/'.$article['id']);
}
?>
</td>
</tr>
<?php
endforeach;
?>
Ответы
Ответ 1
сначала подготовьте свои данные
$i = 1;
$data = array();
foreach($section['Article'] as $article ) {
if($article['status']== 1) {
$article['link'] = $html->link('View', '/articles/view/'.$article['id']);
$data[] = $article;
if ($i++ == 3) break;
}
}
$section['Article'] = $data;
затем отобразите его
<?php foreach($section['Article'] as $article ): ?>
<tr>
<td><?php echo $article['title'] ?></td>
<td> <?php echo $article['link']?></td>
</tr>
<?php endforeach ?>
Ответ 2
Разрезать массив.
foreach(array_slice($section['Article'], 0, 3) as $article ):
Ответ 3
Это поможет, если ваш массив численно проиндексирован
foreach($section['Article'] as $i => $article ):
if ($i > 3) break;
В противном случае - вручную увеличивайте счетчик:
$i = 0;
foreach($section['Article'] as $article ):
if ($i++ > 3) break;
Ответ 4
Было бы проще использовать цикл for() для этого, но для ответа на вопрос:
<?
$i = 0;
foreach ($section['Article'] AS $article):
if ($i == 3) { break; }
?>
...
<?
$i++;
endforeach
?>
Ответ 5
Удивительный должен попробовать этот
<?php $count = 0; $pages = get_pages('child_of=1119&sort_column=post_date&sort_order=desc'); foreach($pages as $page) {
$count++;
if ( $count < 50) { // only process 10 ?>
<div class="main_post_listing"> <a href="<?php echo get_page_link($page->ID) ?>"><?php echo $page->post_title ?></a><br /></div>
<?php
} } ?>
Ответ 6
Цикл foreach не будет лучшим, если вам нужно его ограничить. Попробуйте использовать цикл for.
<?php
for(i=1; i<=3; i++)
{
$article = $section['Article'];
?>
<tr>
<td><?php if($article['status']== 1){echo $article['title'];} ?></td>
<td><?php if($article['status']== 1){echo ' '.$html->link('View', '/articles/view/'.$article['id']);}?></td>
</tr>
<?php } ?>
Этот код сделает цикл текста 3 раза.