> 백엔드 개발 > PHP 튜토리얼 > empty,isset,is_null比较(1/4)_PHP教程

empty,isset,is_null比较(1/4)_PHP教程

WBOY
풀어 주다: 2016-07-13 10:54:13
원래의
911명이 탐색했습니다.

empty,isset,is_null  这几个函数时候,遇到一些问题。甚至给自己的程序带来一些安全隐患的bug。很多时候,对于isset,empty都认为差不多。因此开发时候,就没有注意,一段作为流程判断时候,就出现bug问题了。

 一、举例说明

a.一个变量没有定义,我们该怎么样去判断呢?

 

view source print?
01 <?php
02 #不存在<font color="#aa7700">$test</font> 变量
03   
04 <font color="#aa7700">$isset</font>= isset(<font color="#aa7700">$test</font>)?<font color="#0000ff">"test is define!"</font>:<font color="#0000ff">"test is undefine!"</font>;
05 <font color="#ff1493">echo</font> <font color="#0000ff">"isset:$issetrn"</font>;
06   
07 <font color="#aa7700">$empty</font>=!<font color="#ff1493">empty</font>(<font color="#aa7700">$test</font>)?<font color="#0000ff">"test is define!"</font>:<font color="#0000ff">"test is undefine!"</font>;
08 <font color="#ff1493">echo</font> <font color="#0000ff">"empty:$emptyrn"</font>;
09   
10 <font color="#aa7700">$is_null</font>=<font color="#ff1493">is_null</font>(<font color="#aa7700">$test</font>)?<font color="#0000ff">"test is define!"</font>:<font color="#0000ff">"test is undefine!"</font>;
11 <font color="#ff1493">echo</font> <font color="#0000ff">"is_null:$is_nullrn"</font>;

 

测试结果是:

image

结果出来了:empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null 只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!

1 2 3 4

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/632335.htmlTechArticleempty,isset,is_null 这几个函数时候,遇到一些问题。甚至给自己的程序带来一些安全隐患的bug。很多时候,对于isset,empty都认为差不多。因此开...
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿