Здравствуйте! Пытаюсь сконкатенировать следующим образом: Код (Text): $this->orderDetails['details']['BT']->first_name . ' ' . (!empty($this->orderDetails['details']['BT']->middle_name)) ? $this->orderDetails['details']['BT']->middle_name : $this->orderDetails['details']['BT']->last_name по отдельности $this->orderDetails['details']['BT']->first_name и (!empty($this->orderDetails['details']['BT']->middle_name)) ? $this->orderDetails['details']['BT']->middle_name : $this->orderDetails['details']['BT']->last_name имеют значения, но когда я конкатенирую их то на выходе получаю только вторую правую часть из отчества либо фамилии. Почему так происходит и как можно исправить код?
втора правая часть это что за хрень? приоритеты операций — чую, что последнюю закрывающую скобочку надо передвинуть в самый конец выражения. Добавлено спустя 2 минуты 47 секунд: p.s. у тебя глаза не болят смотреть на $this->orderDetails['details']['BT'] $this->orderDetails['details']['BT'] $this->orderDetails['details']['BT'] $this->orderDetails['details']['BT'] ? сокращай - используй локальную переменную.
простите, забыл уже приоритеты... Вот так работает: Код (Text): $this->orderDetails['details']['BT']->first_name . ' ' . (!empty($this->orderDetails['details']['BT']->middle_name) ? $this->orderDetails['details']['BT']->middle_name : $this->orderDetails['details']['BT']->last_name) А как в первом неправильном случае все происходило, что оставалась правая часть?