Первый проверяет только, равен ли $sth
NULL, 0 также будет истинным.
Второй проверяет, равен ли тип тоже. Таким образом, только NULL
как значение для $sth
будет истинным.
Третий будет работать только с переменными, а не с результатами функций.
Также небольшой совет: время от времени со мной случается, что я неправильно набираю if($sth == NULL)
до if($sth = NULL)
, что приводит к трудностям при поиске ошибок. Лучше наберите if(NULL == $sth)
, где вы получите ошибку интерпретатора, если напишите ее неправильно, которая укажет вам правильное направление.