我的假设随后是基于假设的问题:
JavaScript 有null
and undefined
。您可以将变量设置为null
,表示它没有值,或者您可以将其设置为undefined
,这意味着不知道它是否有值 - 它只是根本没有设置。
PHP has null
,到目前为止我使用的方式与我使用的方式相同null
在 JavaScript 中。 PHP 是否有相当于undefined
?
并不真地,undefined
PHP 中没有对应项。比较 JSundefined
转为 PHP
snull
并没有真正叠加,但它已经是你能得到的最接近的了。在两种语言中,您可以分配这些值/非值:
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';
}
唯一的realAFAIK 知道变量是否存在的方法是使用get_defined_vars
:
$foo;
$bar = null;
$defined = get_defined_vars();
if (array_key_exists($defined, 'foo'))
{
echo '$foo was defined, and assigned: '.$foo;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)