@RuslanSerg
Ленивый начинающий программист

Как это называется [в коде]?

Как это называется ($var = ( ... );). Я имею ввиду не тернарный оператор а эти скобки и то что в них происходит. Аноним
$selectedValues = ( 
            $varValue !== null && $varValue != "" ?
            $varValue :
                (
                    $varValue=== "" ?
                    array() :
                    $wizard->GetDefaultVar($name)
                )
        );
  • Вопрос задан
  • 451 просмотр
Решения вопроса 2
@Andrey17
Ничего не значит, скобки можно опустить, это больше для повышения читаемости, как и глубже по уровню условия, что бы понятно было, что к чему относится.
$selectedValues = 
    $varValue !== null && $varValue != "" ?
    $varValue :
        (
            $varValue=== "" ?
            array() :
            $wizard->GetDefaultVar($name)
        );

$selectedValues = $varValue !== null && $varValue != "" ? $varValue : $varValue=== "" ? array() : $wizard->GetDefaultVar($name);


Совет: лучше не использовать такое большое вложение тернарных операторов. Это сильно снижает понимание и читаемость кода. Тернарные операторы лучше использовать для очень небольших условий. Например
$value = $data === null ? [] : $data;
или
$value = $data ?? [];
Ответ написан
kruslan
@kruslan
Ничего. Просто группировка операции.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@green_goo
Это называется говнокод. Извините, не удержался
Ответ написан
Adamos
@Adamos
Ну, назовите это принудительным вычислением выражения. Название ничем не хуже любого другого.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы