2012-03-14 3 views

ответ

5

Вы не можете, null эквивалентно несуществующей переменной:

переменная считается нулевым, если:

  • он был назначен постоянный NULL.
  • еще не настроен.
  • было unset().

только для массивов, вы можете проверить, существует ли ключ, хотя его значение null с помощью array_key_exists.

+0

+1 Этот ответ более правильный, чем другие, поскольку он касается обеих частей вопроса ($ v существует AND равно null). –

+0

Спасибо, это действительно помогает. – Yekver

+0

Эмм, как насчет использования 'array_key_exists' с' $ GLOBALS'? http://www.php.net/manual/en/reserved.variables.globals.php – kirilloid

0

Пробег: is_null($v).

The PHP online docs are friendly!

+2

, если $ v не существует, он вернет предупреждение. – Yekver

+0

@Yekver вам нужно будет объединить оба. –

+1

@ Xeon06 Как бы вы это сделали? Что касается 'isset()' и 'is_null()', то они неразличимы. – NullUserException

-1

Если вы хотите, чтобы поставить все это вместе, чтобы проверить наличие и нулевое значение

<?php 
if(!is_null($v)){ 
// do something 
} 
?> 
0

Вы должны быть осторожны при использовании isset на переменных, которые могут быть null. Это хороший способ настроить себя на ошибки и проблемы в будущем.

Что вы можете сделать сейчас, это использовать is_null в качестве дополнительного теста.

Смежные вопросы