Blogger Information
Blog 27
fans 2
comment 1
visits 13639
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
变量的作用域与检测方法 2018-4-12
kaclod的博客
Original
608 people have browsed it

实例

<?php 
header('content-type:text/html;charset=utf8');
echo '<h3>is_null(),empty(),isset()区别</h3>';

/**
	1 is_null返回true的情况:
	1 变量已经声明但是未初始化,默认为null值
	2 变量显示赋值为null
	3 unset()销毁后,变量为null值

*/

	$val1;
	$val2 = null;
	$val3 = 'phpcn';
	unset($val3);

	//运算如下
	@var_dump(is_null($val1)?true:false);
	@var_dump(is_null($val2)?true:false);
	@var_dump(is_null($val3)?true:false);


	/**
		二:empty()什么时候返回true?
		1空字符串,空数组
		2 null
		3 0/ '0' /false

		如果一个变量不存在,就是空,也就是null用is_null/empty都可以判断
		2 如果一个变量存在,但是他的值对运行结果无影响,则视为空.
		3 null一定是空,但是空不一定是null,因为他可能是false或0

	*/

		$str1='';
		$str2=[];

		$str3='0';
		$str4=0;

		$str5=null;
		$str6=false;
		$str7='zhangjie'

		echo '<hr>';
		var_dump(empty($str1) ? true : false);	//空字符串
		var_dump(empty($str2) ? true : false);	//空数组
		var_dump(empty($str3) ? true : false);	//字符型数字0 
		var_dump(empty($str4) ? true : false);	//数字0
		var_dump(empty($str5) ? true : false);	//null值
		var_dump(empty($str6) ? true : false);	//布尔false
		var_dump(empty($str7) ? true : false);	//有值且不为空,返回false


/**
	isset()是null的取反操作
	变量已经存在,并且他的值不是null,返回true,否则为false
*/

	$domai='www.php.cin';
	$name= null;
	$job;

	var_dump(isset($var));
	var_dump(isset($domian)?true:false);
	var_dump(isset($name)?true:false);
	var_dump(isset($job)?true:false);


	

运行实例 »

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

变量作用域:

实例

<?php 
header('content-type:text/html;charset=utf8');

$siteName="php中文网";

$GLOBALS['siteName']='PHP中文网';

function hello()
{
  global $siteName; 
  $userName = 'Peter Zhu'; 
  
  return '欢迎来到'.$GLOBALS['siteName'].',我是:'.$userName;
}
echo hello();  //函数调用

//静态变量

function myStatic(){
	static $num=1;

	return '第'.$num.'次输出'.$num++.'<br>';
}

echo '第一次执行完成后$num值:'.myStatic().'<br>';

echo '第一次执行完成后$num值:'.myStatic().'<br>';

echo '第一次执行完成后$num值:'.myStatic().'<br>';

echo '第一次执行完成后$num值:'.myStatic().'<br>';  

//超全局变量

echo '我的名字是:'.$_GET'['name'];

function sayName() {
	return '我的姓名是:'.$_GET['name'];
}

echo sayName();

运行实例 »

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


Correction status:qualified

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