Intereting Posts
PHP – самый быстрый способ преобразования массива 2d в 3d-массив, который сгруппирован по определенному значению PHP Добавление двух часов к дате в заданные часы с использованием функции Удалите белый фон с изображения и сделайте его прозрачным с помощью PHP Youtube API v3, как получить длительность видео? Как конвертировать время, как 2 часа или 3 часа ночи в HH: MM: формат SS в php? php str_ireplace без потери дела PHP: вызов метода другого класса Composer установлен, но get / usr / bin / env: php: Нет такого файла или каталога Коды контактной формы PHP не работают PHP shell_exec () – не печатает динамический вывод, только печатает статический эхо-текст Создание многоцветной полосы в PHPExcel Charts Автосохранение ввода формы с использованием прототипа и PHP Выйти из системы, если пользователи неактивны в течение определенного периода времени Каковы правильные разрешения для папки для загрузки с PHP / Apache? Мой PHP-код закомментирован

Разница между операторами «не равных» <> и! = В PHP

В PHP существует ли разница между операторами != И <> ?

В руководстве говорится:

 $a != $b Not equal TRUE if $a is not equal to $b after type juggling. $a <> $b Not equal TRUE if $a is not equal to $b after type juggling. 

Я думаю, что нет огромных различий, но мне любопытно.

Solutions Collecting From Web of "Разница между операторами «не равных» <> и! = В PHP"

В основной реализации Zend нет никакой разницы. Вы можете получить его из описания Flex для сканера языка PHP:

 <ST_IN_SCRIPTING>"!="|"<>" { return T_IS_NOT_EQUAL; } 

Где T_IS_NOT_EQUAL – сгенерированный токен. Поэтому анализатор Bison не различает <> и != Токенов и рассматривает их одинаково:

 %nonassoc T_IS_EQUAL T_IS_NOT_EQUAL T_IS_IDENTICAL T_IS_NOT_IDENTICAL %nonassoc '<' T_IS_SMALLER_OR_EQUAL '>' T_IS_GREATER_OR_EQUAL 

Поскольку в принятом ответе указывается, что реализация идентична, однако между ними есть небольшая разница в документации

Согласно этой странице оператор <> имеет несколько более высокий приоритет, чем != .

Я не уверен, что это ошибка в реализации Zend, ошибка в документации или только один из тех случаев, когда PHP решает игнорировать правила приоритета.

Обновление: документация обновляется, и теперь больше нет разницы между <> и != .

Они одинаковые. Однако есть и операторы !== и === которые проверяют точное равенство, определяемое значением и типом.

<> означает больше или меньше. != означает не равную. Они в основном означают одно и то же.

Поскольку все говорят, что они идентичны, один из одного языка C-style / shell, один из некоторых других, включая MySQL, который был очень интегрирован в прошлом.

<> следует считать синтаксическим сахаром, синонимом для != который является правильным стилем PHP для неравного.

Далее подчеркивается функция идентификации тройного символа !== .

<> точно совпадает с оператором != так как оба они анализируются как токен T_IS_NOT_EQUAL .

И у них одинаковый приоритет .