|
|
|
| В чем сущность условия применителько к false
<?php
if(strpos($useragent, "Yandex") !== false) $robot = 'robot_yandex';
|
Имеется в иду, что "Yandex" может быть в самом начале строки и потому начинаться с нулевой позиции, но условие и в этом случае выполняется? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2012 в 13:03)
| | Если Yandex в начале строки, то и возвращает позицию ноль, а не false.
Чтоб различать 0 и false используется !== | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2012 в 13:03)
| | >Имеется в иду, что "Yandex" может быть в самом начале строки и потому начинаться с нулевой
>позиции, но условие и в этом случае выполняется?
Да, если strpos() вернет 0, а не false, это будет означать, что Yandex находится в первой позиции. Скорее всего такой ситуации не будет никогда, однако, правила хорошего тона требуют, чтобы в функциях, которые могут возвращать 0 в штатном режиме, сравнение всегда шло с false (это, кстати, не только в PHP так). | |
|
|
|