请帮助我理解以下代码:
<?php
session_start();
if(!isset($_SESSION['StaffId'])){
$_SESSION['StaffId']="";
}
?>
这是否意味着如果没有一组 StaffId,则将其设置为 null?
请帮助我理解以下代码:
<?php
session_start();
if(!isset($_SESSION['StaffId'])){
$_SESSION['StaffId']="";
}
?>
这是否意味着如果没有一组 StaffId,则将其设置为 null?
它正在检查该键是否'StaffId'
存在于$_SESSION
数组中。
例如,如果您有一个数组:
$person = array( 'name' => 'george', 'age' => 22);
然后isset($person['name'])
将返回true,但isset($person['height'])
将返回false。
因此,您的代码示例设置$_SESSION['StaffId']
为''
(一个空字符串),但前提是尚未为$_SESSION
.
编辑:值得注意的是,如果您不知道这$_SESSION
是一个在 PHP 中具有特殊含义的变量,请参阅文档。
它只是检查是否$_SESSION['StaffId']
已设置。
如果不是,则将其设置为“”,这是一个不为空的空字符串
isset - 确定变量是否已设置且不为 NULL。
如果一个变量已经用 unset() 取消设置,它将不再被设置。如果测试已设置为 NULL 的变量,isset() 将返回 FALSE。另请注意,NULL 字节(“\0”)不等同于 PHP NULL 常量。
如果提供了多个参数,则仅当设置了所有参数时 isset() 才会返回 TRUE。评估从左到右进行,并在遇到未设置的变量时立即停止。
如果 var 存在并且值不是 NULL,则返回 TRUE,否则返回 FALSE。