php - Javascript 的未定义的 PHP 等价物是什么?

标签 php null

我的假设之后是基于假设的问题:

Javascript 有nullundefined。您可以将变量设置为 null,表示它没有值,也可以将其设置为 undefined,表示不知道它是否有值或not - 它根本没有设置。

PHP 有 null,到目前为止,我使用它的方式与我在 Javascript 中使用 null 的方式相同。 PHP 是否有等效的 undefined

最佳答案

不是真的,undefined 在 PHP 中没有对应物。比较 JS 的 undefined 和 PHP s null 并没有真正堆叠起来,但它与您将要获得的一样接近。在这两种语言中,您都可以分配这些值/非值:

var nothingness = undefined;
$nothing = null;

而且,如果你声明了一个变量,但没有给它赋值,看起来 JS 将 var 解析为 undefined,而 PHP 解析(或赋值)那个变量 null :

var nothingness;
console.log(nothingness === undefined);//true

$foo;
echo is_null($foo) ? 'is null' : '?';//is null

不过要小心 isset:

$foo = null;
//clearly, foo is set:
if (isset($foo))
{//will never echo
    echo 'foo is set';
}

据我所知,了解变量是否存在的唯一真正方法是使用get_defined_vars:

$foo;
$bar = null;
$defined = get_defined_vars();
if (array_key_exists($defined, 'foo'))
{
    echo '$foo was defined, and assigned: '.$foo;
}

关于php - Javascript 的未定义的 PHP 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17398816/

相关文章:

javascript - 上下文菜单右键单击事件

php - 使用 CakePhp 从索引添加用户不起作用

javascript - 如何将上传的图片传回 html

php - sql函数语句w通过php中的变量赋值连接和调用指定记录

ruby - 将空字符串就地转换为 nil?

C#- "Object reference not set to an instance of an object"

php - 我怎么说 IF class #1 on left, if class #2 on right in loop

ios - 如何在 Swift 中将核心数据属性设置为 nil?

java - 如何一次检查多个变量?

SQL 查询需要出现空值