2012-04-03 19 views
7

Yo sólo quiero saber cómo definir etiqueta HTML <br clear="all"> después de cada 5 iteración en bucle foreach aquí es mi códigocómo definir etiqueta html después de cada 5 iteración en bucle foreach

<?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'>";  
    } 
} 
?> 

Resultado requerido o ayuda son definitivamente appricicated

12345 
<br clear="all"> 
678910 
<br clear="all"> 

Respuesta

4

Prueba esto:

<?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; 
    } 
} 
?> 
+0

Gracias por compartir su experiencia conmigo –

+1

Cada programador sould aprender a hacer $ i% 5, es sólo estamos demasiado sencilla y útil. Hacer lo que se propone aquí crea una necesidad innecesaria de mantener $ i dentro del rango 0 5. Eso es pedir problemas. – Tei

+0

@tei - también lo es ++ $ i == 5, no es ciencia espacial ... la persona que mantiene la base de código debería encargarse de eso. –

3

Usted puede cambiar:

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

a

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

Gracias por compartir tu experiencia conmigo –

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

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

Gracias por compartir tu experiencia conmigo –

1

intente lo siguiente: Suponiendo que su índice de matriz no está ajustado a algo extraño.

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

Eso lo incluirá para todos menos los múltiplos de 5. – MichaelRushton

+0

@MichaelRushton Sí, me pillaste segundos antes de publicar mi edición – Churk

+0

@Churk Thanx para compartir tu experiencia conmigo –

0

sólo para completar los ejemplos ...

Siempre que necesite el índice del bucle, puede utilizar el bucle for lugar (asumiendo que es una matriz). El bucle foreach se inventó por conveniencia cuando no se necesita el índice.

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