Blogger Information
Blog 42
fans 3
comment 2
visits 32216
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP第十八天作业-is_null(),empty()和isset()方法使用和区别
HeartofSunny的博客
Original
569 people have browsed it

总结:

is_null()可以判断以下三种类型的变量是否为true

  • 变量已声明但未初始化,默认为null

  • 把值把null赋值给变量

  • 用unset()方法,把变量变为null值

empty()可以判断以下三种类型的变量是否为true

  • 空字符串,空数组

  • null

  • 0 / '0' / false

isset()判断变量是否已经存在,如果存在,并且它的值不为null,返回true,否则为false

总的来说:

  • 变量有二种状态: 已声明, 未声明

  • 已声明的变量也有二种状态: 已赋值(初始化), 未赋值(未初始化)

  • 变量可能会被赋值类型: null, 空值, 非空值
     *  null值: is_null()
     *  空值: empty()
     *  空值或非空值: isset()

基本使用原则:

  • 对于未声明的变量只能使用isset()进行判断

  • 对于已声明的变量,为空判断用empty(),是否初始化判断用is_null()

实例

<?php
	header("Content-type: text/html; charset=utf-8"); 
	echo '<h2>is_null(),empty(),isset()的使用与区别</h3>';

	//is_null()可以判断以下三种类型的变量是否为true
	//1. 变量已声明但未初始化,默认为null值
	//2. 把null赋值给变量
	//3. 用nset()方法,把变量变为null值

	$name;
	$age = null;
	$sex = 'man';
	unset($sex);

	@var_dump(is_null($name) ? true : false); //true
	@var_dump(is_null($age) ? true : false);  //true
	@var_dump(is_null($sex) ? true : false);  //true

	//empty()可以判断以下三种类型的变量是否为true
	//1. 空字符串,空数组
	//2. null
	//3. 0 / '0' / false

	$data = '';
	$data2 = null;
	$data3 = [];
	$data4 = 0;
	$data5 = '0';
	$data6 = false;

	echo '<hr>';
	@var_dump(empty($data) ? true : false); //true
	@var_dump(empty($data2) ? true : false); //true
	@var_dump(empty($data3) ? true : false); //true
	@var_dump(empty($data4) ? true : false); //true
	@var_dump(empty($data5) ? true : false); //true
	@var_dump(empty($data6) ? true : false); //true


	//isset()判断变量是否已经存在,如果存在,并且它的值不为null,返回true,否则为false

	$student = '黎明';
	$class = null;
	$teach;

	echo '<hr>';
	var_dump(isset($students));	//判断为定义的变量,返回false
	var_dump(isset($class) ? true : false);
	var_dump(isset($teach) ? true : false);		//false,未赋值并不报错,与is_null不同
	var_dump(isset($student) ? true : false); 	
 ?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

手抄部分:

微信图片_20180415235614.jpg

微信图片_20180415235618.jpg

微信图片_20180415235622.jpg


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post