krluch Опубликовано: 2 сентября 2019 Поделиться Опубликовано: 2 сентября 2019 Доброго времени суток! В списке товаров в админке есть задача выводить кастомные поля под названием товара. Как вывести не проблема, но надо менять значения в определенных условиях. Условия (if elseif) глупо будет использовать, решил что наиболее подходят кейсы (switch case) внутри функции для данной задачи, но тут я столкнулся с отсутствием знаний (а я новичек). Как упростить такой вариант? switch ($product['entry 1']){ case "Пункт 1": echo "one"; break; case "Пункт 1.1": echo "one.one"; break; default: echo "num"; break; } switch ($product['entry 2']){ case "Пункт 2": echo "two"; break; case "Пункт 2.1": echo "two.one"; break; default: echo "num"; break; } Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... anboza Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 8 часов назад, krluch сказал: (if elseif) глупо будет использовать, о! а чем это вам if else не угодил? ))) знания Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 4 минуты назад, anboza сказал: а чем это вам if else не угодил слишком он громоздким получается, а кейсы уже не подходят для этой задачи. Как можно упростить if else? <!-- Поле 1--> <?php if ($product['entry_1'] == "Коля") {?> <span class="book"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_1'];?></span> <?php} elseif ($product['entry_1'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_1'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_1'];?></span> <?php }?> <!-- Поле 2 --> <?php if ($product['entry_2'] == "Коля") {?> <span class="book"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_2'];?></span> <?php} elseif ($product['entry_2'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_2'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_2'];?></span> <?php }?> Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... esculapra Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 Ну тут можно было бы сделать выборку из массива $arr=array(имя=>класс...) <span class="<?=$arr[$product['entry_2']]?>"><?=$product['entry_2'];?></span> 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 48 минут назад, esculapra сказал: Ну тут можно было бы сделать выборку из массива Да, спасибо, в другом месте подсказали тоже таким способом. Уже попробовал, работает <? $class = ['Коля'=>"book",'Стас'=>"velosiped",'Лена'=>"kamen",...]; ?> <span class="<?=$calass[$product['entry_1']];?>"><?=$product['entry_1'];?></span> ... Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам Как использовать switch в product_list? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Где покупать модули? Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
anboza Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 8 часов назад, krluch сказал: (if elseif) глупо будет использовать, о! а чем это вам if else не угодил? ))) знания Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 4 минуты назад, anboza сказал: а чем это вам if else не угодил слишком он громоздким получается, а кейсы уже не подходят для этой задачи. Как можно упростить if else? <!-- Поле 1--> <?php if ($product['entry_1'] == "Коля") {?> <span class="book"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_1'];?></span> <?php} elseif ($product['entry_1'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_1'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_1'];?></span> <?php }?> <!-- Поле 2 --> <?php if ($product['entry_2'] == "Коля") {?> <span class="book"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_2'];?></span> <?php} elseif ($product['entry_2'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_2'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_2'];?></span> <?php }?> Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... esculapra Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 Ну тут можно было бы сделать выборку из массива $arr=array(имя=>класс...) <span class="<?=$arr[$product['entry_2']]?>"><?=$product['entry_2'];?></span> 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 48 минут назад, esculapra сказал: Ну тут можно было бы сделать выборку из массива Да, спасибо, в другом месте подсказали тоже таким способом. Уже попробовал, работает <? $class = ['Коля'=>"book",'Стас'=>"velosiped",'Лена'=>"kamen",...]; ?> <span class="<?=$calass[$product['entry_1']];?>"><?=$product['entry_1'];?></span> ... Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам Как использовать switch в product_list? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Deals – адаптивный универсальный шаблон Автор: octemplates Динамичесткая инфострока в шапке + позиция в макете для opencart\ocstore 2x, 3x Автор: Lito911 Единицы Измерения Товара Автор: RoS Opencart Product Search by Image Автор: slavoglo Простой массовый редактор цен. Fast Price Edit Автор: Sha
krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 4 минуты назад, anboza сказал: а чем это вам if else не угодил слишком он громоздким получается, а кейсы уже не подходят для этой задачи. Как можно упростить if else? <!-- Поле 1--> <?php if ($product['entry_1'] == "Коля") {?> <span class="book"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_1'];?></span> <?php} elseif ($product['entry_1'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_1'];?></span> <?php } elseif ($product['entry_1'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_1'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_1'];?></span> <?php }?> <!-- Поле 2 --> <?php if ($product['entry_2'] == "Коля") {?> <span class="book"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Стас") {?> <span class="velosiped"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Лена") {?> <span class="kamen"><?php echo $product['entry_2'];?></span> <?php} elseif ($product['entry_2'] == "Фома") {?> <span class="armeniya"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Олег") {?> <span class="buldog"><?php echo $product['entry_2'];?></span> <?php } elseif ($product['entry_2'] == "Саша") {?> <span class="kirpich"><?php echo $product['entry_2'];?></span> <?php } else {?> <span class="default"><?php echo $product['entry_2'];?></span> <?php }?> Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... esculapra Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 Ну тут можно было бы сделать выборку из массива $arr=array(имя=>класс...) <span class="<?=$arr[$product['entry_2']]?>"><?=$product['entry_2'];?></span> 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 48 минут назад, esculapra сказал: Ну тут можно было бы сделать выборку из массива Да, спасибо, в другом месте подсказали тоже таким способом. Уже попробовал, работает <? $class = ['Коля'=>"book",'Стас'=>"velosiped",'Лена'=>"kamen",...]; ?> <span class="<?=$calass[$product['entry_1']];?>"><?=$product['entry_1'];?></span> ... Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Поддержка и ответы на вопросы Помощь программистам и разработчикам Как использовать switch в product_list?
esculapra Опубликовано: 3 сентября 2019 Поделиться Опубликовано: 3 сентября 2019 Ну тут можно было бы сделать выборку из массива $arr=array(имя=>класс...) <span class="<?=$arr[$product['entry_2']]?>"><?=$product['entry_2'];?></span> 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 48 минут назад, esculapra сказал: Ну тут можно было бы сделать выборку из массива Да, спасибо, в другом месте подсказали тоже таким способом. Уже попробовал, работает <? $class = ['Коля'=>"book",'Стас'=>"velosiped",'Лена'=>"kamen",...]; ?> <span class="<?=$calass[$product['entry_1']];?>"><?=$product['entry_1'];?></span> ... Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0 Перейти к списку тем Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу.
krluch Опубликовано: 3 сентября 2019 Автор Поделиться Опубликовано: 3 сентября 2019 48 минут назад, esculapra сказал: Ну тут можно было бы сделать выборку из массива Да, спасибо, в другом месте подсказали тоже таким способом. Уже попробовал, работает <? $class = ['Коля'=>"book",'Стас'=>"velosiped",'Лена'=>"kamen",...]; ?> <span class="<?=$calass[$product['entry_1']];?>"><?=$product['entry_1'];?></span> ... Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 0
Рекомендованные сообщения