php – how to define html tag after each 5 iteration in foreach loop-ThrowExceptions

Exception or error:

I just want to know how to define HTML Tag <br clear="all"> after each 5 iteration in foreach loop here is my code

<?php
$i=1;    
foreach($videoEntries as $data){
?>
    <div class="item-main">
        <div class="item">
        <a href="javascript:;" onclick="ratePopup(2)" title="<?php echo $data->video_name;?>">
        <div class="overlaid"></div>
        <img src="<?php echo $image_url;?>"  width="93" height="89"/>
        </a>
        </div>
        <p title="Trailer Name"><strong><?php echo $data->video_name;?></strong></p>
        <p title="Released Date"><?php echo $data->video_released_date;?></p>
    </div>
<?php 
    if($i == 5){
        echo "<br clear = 'all'>";    
    }
}
?>

Result Required or helps are definitely appricicated

12345
<br clear="all">
678910
<br clear="all">
How to solve:

Try this:

<?php
$i=0;    
foreach($videoEntries as $data){
$i++;
?>
    <div class="item-main">
        <div class="item">
        <a href="javascript:;" onclick="ratePopup(2)" title="<?php echo $data->video_name;?>">
        <div class="overlaid"></div>
        <img src="<?php echo $image_url;?>"  width="93" height="89"/>
        </a>
        </div>
        <p title="Trailer Name"><strong><?php echo $data->video_name;?></strong></p>
        <p title="Released Date"><?php echo $data->video_released_date;?></p>
    </div>
<?php 
    if($i == 5){
        echo "<br clear = 'all'>";  
        $i=0;
    }
}
?>

Answer:

You can change:

if($i == 5){
    echo "<br clear = 'all'>";    
}

to

if(!($i % 5)){
    echo "<br clear = 'all'>";    
}

Answer:

try this: Assuming your array index is not set to something strange.

foreach ($videoEntries as $index=>$data) {
  if ($index % 5 == 0) {
    echo "<BR>";
  }
}

Answer:

foreach($videoEntries as $data){
    $i++;
    ?>

<?php 
    if(($i % 5) == 0){
        echo "<br clear = 'all'>";  
    }
}
?>

Answer:

Just to complete the examples…

Whenever you need the index of the loop, you can use the for loop instead (assuming it’s an array). The foreach loop was invented for convenience, when you don’t need the index.

for ($index = 0; $index < count(videoEntries); $index++)
{
  $data = $videoEntries[$index];
  ...
  if(($index % 5) == 0)
  {
    echo "<br clear = 'all'>";    
  }
}

Leave a Reply

Your email address will not be published. Required fields are marked *