Переменные в цикле php

Создадим новые переменные в цикле php. Затем выведем их.

Задача будет следующая (это просто для наглядности): пусть мы создали в бесплатной версии ACF (WordPress) произвольные поля, например, множество изображений для слайдера, и мы хотим вывести сразу все изображения, а не по одному.

Создание полей изображений ACF для вывода в цикле php

Объявление переменных в цикле (php)

Пусть у нас в админке создано 12 полей изображений с именами: gallery_image_1, gallery_image_2, …, gallery_image_12. Нам необходимо получить их все сразу.

<?php for ($i = 1; $i <= 12; $i++) {
    ${"image_array_$i"} = get_field("gallery_image_" . $i);
} ?>

Доллар внутри фигурных скобок преобразует переменную в строку, что позволяет нам создать динамическую переменную. Такой приём в php называется «Переменные переменных».

Вывод переменных в цикле

Теперь выведем сразу все изображения в одном цикле.

<?php for ($i = 1; $i <= 12; $i++) { ?>
    <?php if (${"image_array_$i"}) { ?>
        <img
            src="<?= esc_url(${"image_array_$i"}["sizes"]["medium"]) ?>"
            alt="<?= esc_attr(${"image_array_$i"}["alt"]) ?>"
        />
    <?php } ?>
<?php } ?>

Так просто можно создать переменные в цикле PHP и далее их использовать как вам необходимо.