Создавайте строки каждые 4 итерации и закрывайте div - PullRequest
0 голосов
/ 26 ноября 2018

Допустим, это мой массив данных, назначенный переменной $ my_array.

[0] => Array
    (
        [0] => 0 seconds
        [1] => 05:00 PM to 6:00 PM
    )

[1] => Array
    (
        [0] => 6 minutes
        [1] => 08:00 AM to 9:00 AM
    )

[2] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 08
                [1] => 15 AM
            )

    )

[3] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 08
                [1] => 30 AM
            )

    )

[4] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 08
                [1] => 45 AM
            )

    )

[5] => Array
    (
        [0] => 15 minutes
        [1] => 09:00 AM to 10:00 AM
    )

[6] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 09
                [1] => 15 AM
            )

    )

[7] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 09
                [1] => 30 AM
            )

    )

[8] => Array
    (
        [0] => 15 minutes
        [1] => Array
            (
                [0] => 09
                [1] => 45 AM
            )

    )

[9] => Array
    (
        [0] => 6 minutes
        [1] => 10:00 AM to 11:00 AM
    )

[10] => Array
    (
        [0] => 6 minutes
        [1] => Array
            (
                [0] => 12
                [1] => 30 PM
            )

    )

)

У меня есть что-то вроде этого:

foreach($my_array as $key => $a) {
    if(!is_array($a[1)) { ?>
        <div><?php echo $a; ?></div>
        <?php if($key % 4 == 0) { ?>
             <div class="row">
       <?php } ?>
    <?php } ?>

       <div class="col-md-3">
            <?php echo $a[0]; ?>
       </div>

    <?php if(!is_array($a[1)) { ?>
        <?php if($key % 4 == 0) { ?>
             </div>
        <?php }
    } ?>
}

Чего я хочу добиться, так это создать новыйстроки с 4 столбцами, если второй элемент массива не является массивом «if (! is_array ($ a [1))» и после 4 итераций закрывает div.

Чтобы очистить, я создал статический html того, чтоЯ хочу достичь на основе данных, приведенных выше:

Выходные данные должны быть в точности так:

enter image description here

1 Ответ

0 голосов
/ 26 ноября 2018

Я немного очистил все эти открывающие и закрывающие теги PHP и решил вместо этого отобразить фрагменты HTML-кода.Исправлены некоторые синтаксические ошибки в скважине.

foreach($my_array as $key => $a) {

    if(!is_array($a[1])) {
        echo "<div>" . $a[1] . "</div>\n";
        if($key % 4 == 0) {
            echo "<div class=\"row\">\n";
        }
    }

    // create a new row div before the fourth divisible index.
    // this was necessary to insert the div below the timeblock div ($a[1])
    if((($key - 1) % 4) == 0) {
        echo "<div class=\"row\">\n";
    }

    echo "\t<div class=\"col-md-3\">" . $a[0] . "</div>\n";

    // added condition to close the row div on the last item
    if(($key % 4 == 0) || ($key == (count($my_array) -1))) {
        echo "</div>\n";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...