в PHP (и даже в других языках, но в данном случае это больше для PHP), я часто заканчиваю тем, что иногда приходится кодировать длинные условия, такие как пример ниже:
У меня есть код со многимиусловия, и я хочу отобразить другой результат, основанный на определенных условиях.
- , если что-то КРАСНОЕ, а другая вещь КРАСНАЯ, то выведите X,
- , если что-то КРАСНОЕ, ноДругая вещь - ЧЕРНАЯ, затем выведите Y
- , если что-то КРАСНОЕ, а другая вещь КРАСНАЯ, а третья - синяя, то выведите X
- и т. д.
есть ли способ правильно справиться с этим, используя какие-то данные структура / массив конфигурации / матрица / что угодно ?то есть правильно хранить эти «условия» и «результаты» в каком-то массиве конфигурации или в другом?
вместо того, чтобы кодировать вложенные условия, которые потом сложно поддерживать, как в этом очень маленьком примере, но вгораздо больший масштаб
if (preg_match(/something/, $string) {
$result = 'GREEN';
} elseif (preg_match(/something/, $string) {
$result = 'RED';
} else {
if (something else) {
$result = 'GREEN';
} else {
if (something OR something) {
$result = 'AMBER';
} else {
$result = 'GREEN';
}
}
}
или это единственный способ справиться с этим?может быть, с одним
if (something and something or something) {
} elseif (something and something and something) {
} elseif (something and something or something and something) {
} etc
спасибо за вашу помощь
Я кодирую приложение, которое должно отображать различное «состояние» для определенных данных в зависимости от множества различных данных (других атрибутовэтих данных), и я хотел бы избежать нечитаемого кода