PHP:将变量转换为null

时间:2011-01-19 14:09:14

标签: php casting null

我在PHP手册中偶然发现了一件对我不熟悉的事情......

  

将变量转换为null将删除变量并取消设置其值。 (Source

现在我想知道如何做到这一点......我尝试(null)和(NULL)但它似乎被解释为值null,而不是null类型。 我知道这个问题听起来一定很荒谬,但有人知道如何施展为null吗?

5 个答案:

答案 0 :(得分:7)

$a = (unset) $a;

请参阅type casting

答案 1 :(得分:4)

使用(取消设置)而不是(null)。

答案 2 :(得分:2)

根据Type Juggling手册页的类型转换部分,您可以通过...

实现此目的
$varName = (unset)$varName;

答案 3 :(得分:1)

这段代码的意思是,isset将返回false。

$test = "a";
$test = null;
var_dump( isset( $test ));

在PHP中转换变量是通过为其指定特定值(例如$ foo = intval($ bar)等)来完成的。 如果将NULL放入变量,它将被解释为NULL(类型为NULL),如果变量类型为NULL,则isset返回false

编辑:如果你想完全取消设置变量使用

unset( $test );

答案 4 :(得分:0)

您可以将变量强制转换为null,如以下示例所示,但是此行为在PHP 7.2中已 不推荐使用 ,因此即使PHP 7.1也不应这样做支持它。

$a = "Hello World";
$a = (unset)$a; // Deprecated in PHP 7.2
var_dump($a);   // NULL