Blogger Information
Blog 19
fans 0
comment 1
visits 10227
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
412作业_is_null(),empty(),isset()的用法
陈小伟宝宝的博客
Original
620 people have browsed it

实例

<?php 
echo "<h2>0412作业,is_null(),empty(),isset()用法</h2>";
print("<hr color='red'>");
//先学习一下var_dump()方法

$shuCountry = array('刘备', '关羽',  '张飞' );
print('<pre>');

var_dump($shuCountry);
//var_dump()能打印数组,还等计算变量的字符数 此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。


echo "<hr>";
//is_null() — 检测变量是否为 NULL

/**
 * 一、is_null()什么时候返回true?
 * 1.变量已声明但未初始化,默认为null值
 * 2.变量显示赋值为null
 * 3.unset()销毁后,变量为null值
 * 总结:变量不存在/没赋值/值为null,则返回true 
 */


$tes1;
$tes2 = null;
$tes3 = 'null';

var_dump(is_null($tes1)? '是' : '不是');
var_dump(is_null($tes2)? '是' : '不是');
var_dump(is_null($tes3)? '是' : '不是');
var_dump(is_null(''));//空值不是null

echo "<hr>";
/**
判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。
 * 二、empty()什么时候返回true?
 * 1.空字符串,空数组
 * 2.null
 * 3.0 / '0' / false
 *
 * 总结:
 * 1. 如果一个变量不存在,它即是空,也是null,用is_null() / empty()都可以判断
 * 2. 如果一个变量存在,但它的值对运行结果无影响,则视为空
 * 3. null一定是空,但空不一定是null,因为它可能是空值或0或false
 */

$etes1;
$etes2 = '';
$etes3 = 0;
$etes4 = '0';
$etes5 = false;
$etes6 = null;
$etes7 = 'null';

var_dump(empty($etes1)? '是空的': '不是空的');
var_dump(empty($etes2)? '是空的': '不是空的');
var_dump(empty($etes3)? '是空的': '不是空的');
var_dump(empty($etes4)? '是空的': '不是空的');
var_dump(empty($etes5)? '是空的': '不是空的');
var_dump(empty($etes6)? '是空的': '不是空的');
var_dump(empty($etes7)? '是空的': '不是空的');

echo "<hr>";
/**
 * isset()是null的取反操作
 检测变量是否设置,并且不是 NULL。
 * 总结:变量已经存在,并且它的值不为null,返回true,否则为false
 */


 $istes1;
 $istes2 = 0;
 $istes3 = '';
 $istes4 = null;
 $istes5 = true;
 $istes6 = false;
 $istes8 = 'null';
var_dump(isset($istes1)? '有数据': '是空的');//是空的
var_dump(isset($istes2)? '有数据': '是空的');
var_dump(isset($istes3)? '有数据': '是空的');
var_dump(isset($istes4)? '有数据': '是空的'); //是空的
var_dump(isset($istes5)? '有数据': '是空的');
var_dump(isset($istes6)? '有数据': '是空的');
//var_dump(isset($istes7)? '有数据': '是空的');
var_dump(isset($istes8)? '有数据': '是空的');


echo "<hr>";
/*
 * 作用域只有三个:
 * 1.全局:函数之外创建,仅在当前脚本除函数之外的地方使用;
 * 2.局部:函数内部创建,仅能在函数中使用,外部不可访问;
 * 3.静态:函数内部创建,仅在函数中使用,函数执行完成它的值不丢失;


 在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。
在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:


*/

$nameAll = '张飞';
$nameAll2 = '关羽';
echo '在函数外返回',$nameAll;
echo "<br>";
function Fname()
{
	$Fname = '刘备';
	echo '在函数内定义的变量',$Fname;
	echo '<br>';
	echo '在函数内访问全局变量',$nameAll;//函数不能访问全局变量
	global $nameAll;  //加上global 声明可以访问全局变量 
	echo '在函数内访问全局变量',$nameAll;
	echo '<br>';
	echo '在函数内访问全局变量',$GLOBALS['nameAll2'];   //注意这种写法没有$符


	# code...
};

Fname();
echo "<hr>";



/*
global 关键字用于函数内访问全局变量。
在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字:

PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
,$GLOBALS['变量']


Static 作用域
当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。
要做到这一点,请在您第一次声明变量时使用 static 关键字:
*/

function Fstatic()
{
 //$ax = 1; //这样声明不会保留后续累计结果
	static $ax=1;  //这样声明变量后续结果会被保留
 echo '这是第'.$ax.'次打印'.$ax,'<br>';
  $ax++;

};
Fstatic();
Fstatic();
Fstatic();


 ?>

运行实例 »

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


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
1 comments
嘉俊 2018-04-14 13:50:56
写的不是很准确,希望可以改进
1 floor
Author's latest blog post