!$var 与 isset() 不同?
!$var is different than isset()?
我正在使用 PHP 脚本,该脚本向我显示以下警告:
Undefined variable: _pagi_htaccess
这一行是:
if (!$var){
我做了以下更改:
if (!isset($var)){
警告不再存在,但脚本无法运行。改之前,执行的是if里面的代码,现在有了!isset,代码执行的是else。所以,我不明白 !$var 和 !isset($var)
之间的区别
试试这个:
if (isset($var) && !$var) {
这首先检查变量是否存在,然后,只有在那时,检查它是否为 FALSE。
请注意:这不是好的编程。最好找出在某些情况下 $var 不存在的原因。这可能是由某种编码错误引起的。
如 and 所说。 !$var 是$var 的否定,$var 转boolean 然后求值,如果$var 等于true,!$var 等于false。
另一方面,isset($var) 确定变量是否已设置且不为 NULL,然后如果您有 if(!isset($var)) 则询问是否未设置且为 NULL $var。
我正在使用 PHP 脚本,该脚本向我显示以下警告:
Undefined variable: _pagi_htaccess
这一行是:
if (!$var){
我做了以下更改:
if (!isset($var)){
警告不再存在,但脚本无法运行。改之前,执行的是if里面的代码,现在有了!isset,代码执行的是else。所以,我不明白 !$var 和 !isset($var)
之间的区别试试这个:
if (isset($var) && !$var) {
这首先检查变量是否存在,然后,只有在那时,检查它是否为 FALSE。
请注意:这不是好的编程。最好找出在某些情况下 $var 不存在的原因。这可能是由某种编码错误引起的。
如
另一方面,isset($var) 确定变量是否已设置且不为 NULL,然后如果您有 if(!isset($var)) 则询问是否未设置且为 NULL $var。