PHP - сделайте это, и если следующая часть соответствует этим критериям, также сделайте это

Я новичок в PHP, но понятия не имею, как сформулировать этот вопрос.

Я хочу вернуть цветной круг, если цвет был выбран в другом месте.

Итак, если на серебре поставлена ​​отметка, покажите серебряный кружок.

Если отмечены серебро и золото, покажите оба.

Должен быть более простой способ кодирования нижеприведенного, вместо того, чтобы создавать множество отдельных операторов if и каждый раз вызывать переменную?

elseif здесь не сработает, насколько я понимаю.

Простите мою наивность!

Код, который я написал ниже:

    <?php

            // for iphone   
            $colours_available = get_field('iphone_colours_available');


            // check
            if ( $colours_available && in_array('silver', $colours_available) ): ?>


              <div class = "colour-circle-title"><p>Silver</p></div>


        <?php endif; ?>

            <?php

            // vars 
            $colours_available = get_field('iphone_colours_available');


            // check
            if ( $colours_available && in_array('gold', $colours_available) ): ?>



              <div class = "colour-circle-title"><p>Gold</p></div>





        <?php endif; ?>

Большое спасибо за любую помощь!

Если вы просто перебираете (попробуйте foreach ()) массив, возвращаемый get_field ('iphone_colours_available'), вы можете отобразить каждый цвет, который не показывает «если» требуется. Если все возвращаемые цвета не должны отображаться все, но я предполагаю, что он отфильтровывает только доступные.

Danny 06.06.2018 20:33

Спасибо! этот метод сработал!

Ian Ranasinghe 07.06.2018 18:35
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
37
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как упоминалось в комментариях, вы можете перебирать свой массив $colours_available, а затем использовать ucwords() для ввода текста p-тега в верблюжий регистр:

<?php $colours_available = get_field('iphone_colours_available'); ?>
<?php foreach($colours_available  as $color) :; ?> 
    <div class = "colour-circle-title"><p><?php echo ucwords($color); ?></p></div>
<?php endforeach; ?>

Примечание. Если вам не нужно использовать массив $colours_availble где-либо еще, вы можете удалить эту строку и заменить ее на get_field('iphone_colours_available') в цикле. Кроме того, это решение не касается сортировки, как в предыдущем решении. Для этого я бы рекомендовал посмотреть Функции сортировки PHP, в частности uasort, uksort и usort.

Другие вопросы по теме