Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
Есть у меня такой код: Код: php 1. 2. 3. Выводить он должен что-то вроде: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Но на самом деле получается примерно такое: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Выглядит так, как будто строка обрабатывается не так: Код: plaintext Код: plaintext Вроде бы из этого вытекает, что у тернарного оператора приоритет невысокий и он никак не может выполниться прежде чем осуществится конкатенация строк. Или я что-то не учитываю? ________________________ Мы смотрим с оптимизмом... ...в оптический прицел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:02 |
|
||
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
http://php.net/manual/ru/language.operators.precedence.php Используйте скобки, даже если они не обязательны. Чаще всего это повышает читаемость кода, непосредственно определяя порядок группировки, не полагаясь на конкретные приоритет или ассоциативность оператора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:44 |
|
||
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
Это само собой, я скобки поставил и сейчас код уже работает нормально. Просто хотелось бы понять, почему без скобок не получилось. Вроде бы должно было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 11:11 |
|
||
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
такое ощущение, Alibek B. просто троллит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 11:32 |
|
||
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
авторПросто хотелось бы понять, почему без скобок не получилось. Ты же сам сказал, что тенарный оператор имеет ниже приоритет, чем точка, поэтому точка выполняется в первую очередь. Как раз у тебя сначала выполнилась точка, потом только ?: То есть в твоём случае строка: Код: php 1. равносильна строке: Код: php 1. А вот если применить такую конструкцию: Код: php 1. То вроде бы как по моей логике должен выполниться сначала тенарный оператор и результат $a=1, но на самом деле $a=0, как будто первый выполнился OR. А фокус в том, что даже = выше по приоритету, чем OR: Код: php 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 12:18 |
|
||
|
PHP, использование тернарного оператора
|
|||
|---|---|---|---|
|
#18+
Нда... Неудачный пример привел, так будет лучше: Код: php 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 12:31 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38927782&tid=1461872]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 410ms |

| 0 / 0 |
