|
Perl v5.14.2 - cтранный глюк?
|
|||
---|---|---|---|
#18+
Допустим у меня в цикле используется такой фрагмент: Код: php 1.
В моем представлении в $user должно оказаться значение $item->{'user'}, если оно существует, или undef, если такого значения не существует. В минимальном примере у меня так и получается: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Но в более сложном скрипте я сталкивался с тем, что в переменной оказывается значение с прошлой итерации цикла. Код: php 1. 2. 3. 4. 5.
В $row нет элемента 'TMS.PACKAGES', но в $pkg задано значение. Из-за чего такое может происходить? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2019, 10:47 |
|
Perl v5.14.2 - cтранный глюк?
|
|||
---|---|---|---|
#18+
Кажется локализовал проблему. Код: php 1. 2. 3. 4.
В этом примере почему-то изменяется $cache, условие внутри тернарного оператора истинно. Если внутри тернарного оператора выражения заключить с скобки, тогда всегда нормально. Код: php 1. 2. 3. 4.
Это баг? Или какие-то особенности, которые я не учитываю? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2019, 22:53 |
|
Perl v5.14.2 - cтранный глюк?
|
|||
---|---|---|---|
#18+
Могу ошибаться, возможно, к ошибке приводит дефолтовый приоритет выполнения операторов. Скобками приоритеты расставлены явным образом. Ну и код чуть лучше читается. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2019, 23:11 |
|
Perl v5.14.2 - cтранный глюк?
|
|||
---|---|---|---|
#18+
А какого именно оператора? Я считал, что "?:" это не оператор, а синтаксическая структура. А больше там операторов с неоднозначным приоритетом и нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2019, 00:36 |
|
|
start [/forum/topic.php?fid=23&fpage=14&tid=1459890]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 268ms |
total: | 417ms |
0 / 0 |