批改状态:未批改
老师批语:
is_null(),empty(),isset()三个函数的使用方法
<meta charset="utf-8"> <?php /** * is_null(): * 1.变量为null * 2.变量未赋值 * 3.unset()删除变量 * 总结:变量不存在/没赋值/值为null,则返回true */ $val1 = null; $val2; $val3 = 123; unset($val3); var_dump((is_null($val1)? true :false)); @var_dump((is_null($val2)? true :false)); @var_dump((is_null($val3)? true :false)); echo '<hr>'; /** * empty() * 空字符串,空数组 * null:null一定是空,空不一定是null * 0、'0'、false * */ $str1 = ''; $str2 = []; $str3 = null; $str4 = 0; $str5 = false; var_dump(empty($str1)?true:false); var_dump(empty($str2)?true:false); var_dump(empty($str3)?true:false); var_dump(empty($str4)?true:false); var_dump(empty($str5)?true:false); /** * 判断用户是否在文本框输入内容用:empty() * 因为文本框value属性,默认为空 */ /** * isset()是null的相反操作 * 变量存在且不为null,返回true * 判断变量有和无用isset() */ echo '<hr>'; $text1 = '蚊子好烦人'; $text2 = null; $text3; var_dump(isset($var)); var_dump(isset($text1)); var_dump(isset($text2)); var_dump(isset($text3)); /** * 总结: * 变量两种状态:已声明和未声明 * $var是未声明为赋值 * 对于已经声明过的变量有两种:已赋值,未赋值:text3未赋值 * 变量可能会被赋值有三种:null,空,非空 * null is_null() * 空 :empty() * 空或非空 isset() * * 基本原则: * 对于未声明的只能有isset() * 对于已经声明的:为空用empty(),是否初始化用is_null() */ echo '<hr>'; // 变量未声明 // 用isset判断不报警 var_dump(isset($a)); // 实例 :分页显示数据,如果当前的url地址中有分页变量p,输入指定页 // 如果没有就默认第一页 // 如果p存在了,就输入p,如果没有就输入1 $page = isset($_GET['p']) ? $_GET['p']:1; echo $page; //没有赋值,就默认给null @var_dump(is_null($a)); // null就是空,空不一定时null var_dump(empty($a)); // 第二种,变量已经赋值了 $a = '123'; $b = ''; $c = null; echo '<hr>'; var_dump(isset($a)); var_dump(empty($b)); var_dump(is_null($c)); /** * 什么时候用null * 如果不确定变量最终是什么类型的时候,用null初始化 * 对象建议用null初始化 */ ?>
点击 "运行实例" 按钮查看在线实例
变量的作用域: 全局,局部,静态
<meta charset="utf-8">
<?php
/**
* 函数:是脚本中具有特点功能的代码段,(可以重复调用)
* 语法:声明:function funcName (参数){代码段}
* 表达式:$funcName = function(args){代码段}/匿名函数/不需要函数名
* 调用:按名称调用 : funcName(arg)
* 三种模式:
* 全局
* 局部
* 静态
*/
// 全局,只要不是在函数中创建就是全局
$siteName = '蚊子很烦人';
// function是函数关键字
// 在函数被创建就是局部
function hello()
{
// 函数内部不能直接访问全局变量
// 作用域不一样
// global $siteName;声明即可访问全局变量
// 可以直接用全部数组替换
$userName = 'admin';
// return 'Hello'.$siteName.',我是:'.$userName;
return 'Hello'.$GLOBALS['siteName'].',我是:'.$userName;
}
echo hello();
echo '<br>';
/**
* 静态变量
* 变量只有在第一次执行的时候赋值,之后就不会赋值了
*/
function myStatic(){
static $num = 1;
return '第'.$num.'次输出'.$num++.'<br>';
}
echo myStatic();
echo myStatic();
echo myStatic();
/**
* 超级全局变量:$_SERVER,$_COOKE,$_SESSION,$_GET,$_POST,$_REQUEST
* $_REQUSET = $_GET+$_POST+$_COOKE
*/
echo '<hr>';
// get从url中传入?
echo '我的姓名是:'.$_GET['name'];
echo '<hr>';
//在函数中引用
function sayName(){
return '我的名字是:'.$_GET['name'];
}
echo sayName();
?>点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号