/ / Vytvoriť vonkajší div, ak je počítadlo deliteľné 4 - php, html, codeigniter, loop, foreach

Vytvoriť vonkajšie div, ak je počítadlo deliteľné pomocou 4 - php, html, codeigniter, slučky, foreach

Mám problém so slučovaním mojich značiek HTML. Mojím cieľom je uzavrieť každé 4 div s triedou "položka" v triede "item-wrap". Doteraz tu je môj kód:

$ reproduktory sa vrátia 8 riadkov, takže "item-wrap" trieda sa bude zobrazovať dvakrát s 4 "item" triedou vnútri

<?php
$speaker_ctr = 0;
if(count($speakers) > 0){
?>
<div class="item-wrap">
<?php foreach($speakers as $speaker){ ?>
<div class="item"> <img class="lazy" data-lazy-src="/images/<?php echo $speaker["imagepath"]; ?>" />
<h5 class="txt-18 bold-font text-uppercase no-mbt mt-20"><?php echo $speaker["name"]; ?></h3>
<p class="no-mn"><?php echo $speaker["position"]; ?></p>
<a href="<?php echo $speaker["url"]; ?>" target="_blank" class="txt-14 theme no-mn"><?php echo $speaker["company"]; ?></a>
</div>
<?php } ?>
</div>
<?php
$speaker_ctr++;
}
?>

odpovede:

0 pre odpoveď č. 1

Vyskúšajte -

        $speaker_ctr = 0;
if(count($speakers) > 0){
?>
<div class="item-wrap">
<?php
foreach($speakers as $speaker){
$speaker_ctr++; // increment
?>
<div class="item"> <img class="lazy" data-lazy-src="/images/<?php echo $speaker["imagepath"]; ?>" />
<h5 class="txt-18 bold-font text-uppercase no-mbt mt-20"><?php echo $speaker["name"]; ?></h3>
<p class="no-mn"><?php echo $speaker["position"]; ?></p>
<a href="<?php echo $speaker["url"]; ?>" target="_blank" class="txt-14 theme no-mn"><?php echo $speaker["company"]; ?></a>
</div>
<?php
// print if divisible by 4
// every 4th element
if($speaker_ctr%4 == 0 && $speaker_ctr != count($speakers)) {
echo "</div><div class="item-wrap">";
}
}
?>
</div>
<?php
}

1 pre odpoveď č. 2

Skúste nižšie kód: -

<?php
if(count($speakers) > 0){

for($i=0;$i<=count($speakers);$i++){
if($i%4==0){
echo "<div class="item-wrap">";
}
?>
<div class="item"> <img class="lazy" data-lazy-src="/images/<?php echo $speakers[$i]["imagepath"]; ?>" />
<h5 class="txt-18 bold-font text-uppercase no-mbt mt-20"><?php echo $speakers[$i]["name"]; ?></h3>
<p class="no-mn"><?php echo $speakers[$i]["position"]; ?></p>
<a href="<?php echo $speakers[$i]["url"]; ?>" target="_blank" class="txt-14 theme no-mn"><?php echo $speakers[$i]["company"]; ?></a>
</div>

<?php
if($i%4==0){
echo "</div>";
}

}
}