Есть ли разница между!== и! = В PHP?

Есть ли разница между !== а также != в PHP?

7 ответов

Решение

!= оператор сравнивает значение, в то время как !== Оператор также сравнивает тип.

Это означает, что это:

var_dump(5!="5"); // bool(false)
var_dump(5!=="5"); // bool(true), because "5" and 5 are of different types

!= является инверсией == оператор, который проверяет равенство между типами

!== является инверсией === оператор, который проверяет равенство только для вещей одного типа.

!= для "не равных", в то время как !== для "не идентичны". Например:

'1' != 1   # evaluates to false, because '1' equals 1
'1' !== 1  # evaluates to true, because '1' is of a different type than 1

!== проверяет как тип, так и значение,!= только проверяет значение

$num =  5

if ($num == "5") // true, since both contain 5
if ($num === "5") // false, since "5" is not the same type as 5, (string vs int)

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

оператор !== возвращает true, если два его операнда имеют разные значения или они имеют разные типы.

ура

=== называется оператором идентификации. И обсуждается подробно в ответах на другие вопросы.

Ответы других здесь также верны.

Смотрите таблицы сравнения типов PHP о том, какие значения равны (==) а что идентично (===).

Другие вопросы по тегам