is_null(),empty(),isset()三个函数的用法:<?php $pageTitle=null; ?>
html>
<?php echo is_null($pageTitle)?'用户注册':$pageTitle; ?>用户名:
密码:
注册
check.php代码:<?php
$userName = isset($_POST['userName']) ? $_POST['userName'] :'';
$password = isset($_POST['password']) ? $_POST['password'] :'';
if(empty($userName)){
echo '用户名不能为空';
}elseif(empty($password)){
echo '密码不能为空';
}else{
echo '注册成功';
}
运行结果:
总结:
一、is_null()什么时候返回true?
1.变量已声明但未初始化,默认为null值
2.变量显示赋值为null
3.unset()销毁后,变量为null值
总结:变量不存在/没赋值/值为null,则返回true
二、empty()什么时候返回true?
1.空字符串,空数组
2.null
3.0 / '0' / false
总结:
1. 如果一个变量不存在,它即是空,也是null,用is_null() / empty()都可以判断
2. 如果一个变量存在,但它的值对运行结果无影响,则视为空
3. null一定是空,但空不一定是null,因为它可能是空值或0或false
三、isset()什么时候返回true?
isset()是null的取反操作
总结:变量已经存在,并且它的值不为null,返回true,否则为false
手抄代码:
变量的作用域:<?php
$siteName = 'php中文网';
echo $siteName;
echo '
';
function study(){
$course = 'php';
global $siteName;
return '我在'.$siteName.'学习'.$course;
}
echo study();
echo '
';
function jisuan(){
static $a = 1;
$b = 3;
$a = $a + $b;
return $a;
}
echo jisuan().'
';
echo jisuan().'
';
echo jisuan().'
';
echo jisuan().'
';
echo jisuan().'
';
运行结果:
总结:
作用域只有三个:
1.全局:函数之外创建,仅在当前脚本除函数之外的地方使用;
2.局部:函数内部创建,仅能在函数中使用,外部不可访问;
3.静态:函数内部创建,仅在函数中使用,函数执行完成它的值不丢失;
全局变量只能在函数之外使用,如果要在函数中使用全局变量必须使用global关键字进行声明。局部变量只能在函数内使用,外部无法访问。静态变量只能在函数内使用,函数执行后它的值不丢失。