Elaine Byene
Elaine Byene

Reputation: 4142

Insert different DIVs after x DIVs using PHP

The PHP code below generates 240 DIVs in total. I want to insert different DIV after 7, 10, 21, 135 and 201 DIVs. How should I proceed?

These are the DIVs I want to show:

<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="div7">div 7 description goes here</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="col-xs-3">field</div>
<div class="div10">div 10 description goes here</div>
<div class="col-xs-3">field</div>
...goes on

This is the PHP Code:

<div class="row">
    <?php foreach ($this->fields as $field) { ?>
        <div class="col-xs-3 EditFormClass">
            <?php echo $field[0]; ?>
        </div>
        <div class="col-xs-3 EditFormClass">
            <?php echo $field[1]; ?>
        </div>
    <?php } ?>
</div>

Upvotes: 3

Views: 148

Answers (1)

Kamrul Khan
Kamrul Khan

Reputation: 3350

You can put the exceptional cases in an array and then run the loop:

    <?php
    $difDiv = [];
    $difDiv[7] = 'div 7 description goes here';
    $difDiv[10] = 'div 10 description goes here';
    ?>
    <div class="row">
    <?php $i = 0; ?>
    <?php foreach ($this->fields as $field) { ?>
        <div class="col-xs-3 EditFormClass">
            <?php echo $field[0]; ?>
        </div>
        <div class="col-xs-3 EditFormClass">
            <?php echo $field[1]; ?>
        </div>
        <?php 
            $i++;
            if (isset($difDiv[$i])) { ?>
                <div class="div<?php echo $i ?> "><?php echo $difDiv[$i]; ?></div>
            <?php } ?>

    <?php } ?>
</div>

Upvotes: 1

Related Questions