Php 为什么gettype()会输出;空";对于未定义的变量?
我尝试了以下代码:Php 为什么gettype()会输出;空";对于未定义的变量?,php,Php,我尝试了以下代码: <?php echo gettype($x); ?> 我得到了以下结果: 为什么显示错误后,gettype()输出“NULL”?我的意思是,一个未定义的变量是一个不存在的变量,不是空变量,对吗?你确实回答了你自己的问题。 在您尝试获取nothing类型时,默认情况下它将为null 比如说 X=5 它将返回一个整数 但是在你的例子中,x没有被启动,因此它保持为空。 VAR在运行中工作,可以是任何东西 我希望这是有用的 (如果这包含误解,请让我知道错误
<?php
echo gettype($x);
?>
我得到了以下结果:
为什么显示错误后,
gettype()
输出“NULL”?我的意思是,一个未定义的变量是一个不存在的变量,不是空变量,对吗?你确实回答了你自己的问题。
在您尝试获取nothing类型时,默认情况下它将为null
比如说
X=5
它将返回一个整数
但是在你的例子中,x没有被启动,因此它保持为空。
VAR在运行中工作,可以是任何东西
我希望这是有用的
(如果这包含误解,请让我知道错误所在)说明:
特殊的NULL
值表示没有值的变量NULL
是类型NULL
的唯一可能值
在下列情况下,变量被视为null
:
- 它已被分配常数
NULL
- 它尚未设置为任何值
- 它一直是
也请检查表格。变量值在哪里可能与您在哪里定义的
$x
重复?@Phil Roggenbuck我本来打算不定义$x
。@Steve啊,现在我明白了。但是如果一个尚未设置为任何值的变量为空(如文档所述),那么,当我调用变量上的gettype()
时,为什么会出现错误(我应该只得到“NULL”)?gettype()
在被问及未定义变量的类型时返回NULL
,但对未定义变量的任何读取都会发出“注意:未定义变量”。