Использование ==
может быть опасным.
Обратите внимание, что она преобразует переменную в другой тип данных, если они различаются.
Примеры:
echo (1 == '1') ? 'true' : 'false';
echo (1 == true) ? 'true' : 'false';
Как видите, эти два типа принадлежат разным типам, но в результате получается true
, что может не соответствовать ожиданиям вашего кода.
Однако рекомендуется использовать ===
, поскольку тест показывает, что он немного быстрее, чем strcmp()
и его альтернатива без учета регистра strcasecmp()
.
Быстрый поиск в Google выкрикивает это сравнение скорости: http://snipplr.com/view/758/