Как мы все знаем, если переменная создается без значения, ей автоматически присваивается значение NULL.Почему значение «NULL» переменной не отображается с использованием эха и печати, но отображается с помощью функции var_dump()?
У меня есть следующие фрагменты кода:
<?php
$name;
echo $name;
?>
И
<?php
$name;
print $name;
?>
Оба выхода, приведенный выше фрагменты кода, как показано ниже (это точно так же):
Notice: Undefined variable: name in C:\xampp\htdocs\php_playground\demo.php on line 7
У меня есть еще один фрагмент кода:
<?php
$name;
var_dump($name);
?>
Выход выше (последний) фрагмент кода, как показано ниже:
Notice: Undefined variable: name in C:\xampp\htdocs\php_playground\demo.php on line 8
NULL
Итак, мой вопрос, почему значение «NULL» не получает отображаться, когда я попытался показать его с помощью эхо и печатать?
Однако значение «NULL» отображается, когда я пытался показать его с помощью функции var_dump().
Почему это происходит?
Что стоит за этим поведением?
Thank you.
Поскольку оба '' echo' и печать 'неявно передать значение в строку. И '(string) NULL' - пустая строка. Так вот, вы просто не можете это увидеть. И 'var_dump' в соответствии с его назначением не использует ничего, кроме дампов as-is. – zerkms
@zerkms: так что я вижу как вывод функции var_dump(), является строкой «NULL» на экране. Эта строка является типом данных или значением пустой переменной? – user2839497
Это значение 'NULL' типа' NULL'. http://php.net/manual/en/language.types.php http://php.net/manual/en/language.types.null.php – zerkms