- 浏览: 13730876 次
- 性别:
- 来自: 洛杉矶
文章分类
- 全部博客 (1994)
- Php / Pear / Mysql / Node.js (378)
- Javascript /Jquery / Bootstrap / Web (435)
- Phone / IOS / Objective-C / Swift (137)
- Ubuntu / Mac / Github / Aptana / Nginx / Shell / Linux (335)
- Perl / Koha / Ruby / Markdown (8)
- Java / Jsp (12)
- Python 2 / Wxpython (25)
- Codeigniter / CakePHP (32)
- Div / Css / XML / HTML5 (179)
- WP / Joomla! / Magento / Shopify / Drupal / Moodle / Zimbra (275)
- Apache / VPN / Software (31)
- AS3.0/2.0 / Flex / Flash (45)
- Smarty (6)
- SEO (24)
- Google / Facebook / Pinterest / SNS (80)
- Tools (22)
最新评论
-
1455975567:
xuezhongyu01 写道wocan23 写道我想问下那个 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
xuezhongyu01:
wocan23 写道我想问下那个111.1是怎么得来的我也看不 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
18335864773:
试试 pageoffice 在线打开 PDF 文件吧. pag ...
jquery在线预览PDF文件,打开PDF文件 -
青春依旧:
opacity: 0.5; 个人喜欢这种方式!关于其他css特 ...
css透明度的设置 (兼容所有浏览器) -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
搞定网页打印自动分页问题
empty -- 检查一个变量是否为空
bool empty
( mixed var )
如果 var 是非空或非零的值,则 empty() 返回 FALSE 。换句话说,"" 、0 、"0" 、NULL 、FALSE 、array() 、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE 。
empty() 与 isset() 的一个简单比较
<?php $var = 0; // 结果为 true,因为 $var 为空 if (empty($var)) { echo '$var is either 0 or not set at all'; } // 结果为 false,因为 $var 已设置 if (!isset($var)) { echo '$var is not set at all'; } ?>
empty()
只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用: empty(addslashes($name))
。
isset -- 检测变量是否设置
bool isset
( mixed var [, mixed var [,
...]] )如果 var
存在则返回 TRUE
,
否则返回 FALSE
。
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset() 。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE 。同时要注意的是一个 NULL 字节("\0" )并不等同于 PHP 的 NULL 常数。
isset()
只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined()
函数。
<?php $var = ''; // 结果为 TRUE,所以后边的文本将被打印出来。 if (isset($var)) { print "This var is set set so I will print."; } // 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。 $a = "test"; $b = "anothertest"; var_dump( isset($a) ); // TRUE var_dump( isset ($a, $b) ); // TRUE unset ($a); var_dump( isset ($a) ); // FALSE var_dump( isset ($a, $b) ); // FALSE $foo = NULL; var_dump( isset ($foo) ); // FALSE ?>
对于数组中的元素也同样有效
<?php $a = array ('test' => 1, 'hello' => NULL); var_dump( isset ($a['test']) ); // TRUE var_dump( isset ($a['foo']) ); // FALSE var_dump( isset ($a['hello']) ); // FALSE // 键 'hello' 的值等于 NULL,所以被认为是未置值的。 // 如果想检测 NULL 键值,可以试试下边的方法。 var_dump( array_key_exists('hello', $a) ); // TRUE ?>
is_null -- 检测变量是否为 NULL
bool is_null
( mixed var )
如果 var
是 null
则返回 TRUE
,否则返回 FALSE
。
总结:
empty在变量为null,0,"",'0',null,array()返回true
isset在判断null时返回false
is_null只要是null返回true,否则返回false
理解了这些,这三个函数足以区别开来了.
$x = “”; | string | TRUE | FALSE | TRUE | FALSE |
$x = null | NULL | TRUE | TRUE | FALSE | FALSE |
var $x; | NULL | TRUE | TRUE | FALSE | FALSE |
$x is undefined | NULL | TRUE | TRUE | FALSE | FALSE |
$x = array(); | array | TRUE | FALSE | TRUE | FALSE |
$x = false; | boolean | TRUE | FALSE | TRUE | FALSE |
$x = true; | boolean | FALSE | FALSE | TRUE | TRUE |
$x = 1; | integer | FALSE | FALSE | TRUE | TRUE |
$x = 42; | integer | FALSE | FALSE | TRUE | TRUE |
$x = 0; | integer | TRUE | FALSE | TRUE | FALSE |
$x = -1; | integer | FALSE | FALSE | TRUE | TRUE |
$x = “1″; | string | FALSE | FALSE | TRUE | TRUE |
$x = “0″; | string | TRUE | FALSE | TRUE | FALSE |
$x = “-1″; | string | FALSE | FALSE | TRUE | TRUE |
$x = “php”; | string | FALSE | FALSE | TRUE | TRUE |
$x = “true”; | string | FALSE | FALSE | TRUE | TRUE |
$x = “false”; | string | FALSE | FALSE | TRUE | TRUE |
发表评论
-
PHP: 在类(class)中加载动态函数, 变量函数或半变量函数 variable function/method
2016-09-03 07:54 7171最终实例在下方 以前 ... -
MySQL入门 (七) : 储存引擎与资料型态
2016-09-03 07:49 45531 表格与储存引擎 表格(table)是资料库中用来储存 ... -
MySQL入门 (六) : 字元集与资料库
2016-09-03 07:47 45661 Character Set与Collation 任何 ... -
MySQL入门 (五) : CRUD 与资料维护
2016-09-03 07:46 54811 取得表格资讯 1.1 DESCRIBE指令 「 ... -
MySQL入门 (四) : JOIN 与UNION 查询
2016-09-03 07:42 45001 使用多个表格 在「world」资料库的「countr ... -
PHP: 关键字global 和 超全局变量$GLOBALS的用法、解释、区别
2016-08-31 12:07 5039$GLOBALS 是一个关联数组,每一个变量为一个 ... -
MySQL入门 (三) : 运算式与函式
2016-08-31 12:01 4383运算式(expressions)已经 ... -
MySQL入门 (二) : SELECT 基础查询
2016-08-31 11:56 46811 查询资料前的基本概念 1.1 表格、纪录 ... -
MySQL入门 (一) : 资料库概论与MySQL的安装
2016-08-31 11:51 44571. 储存与管理资料 储存与管理资料一直是资讯应用上最基本 ... -
MySQL入门 (九) : 子查询 Subquery
2016-08-30 02:26 44471 一个叙述中的查询叙述 子查询(subquery)是一 ... -
PHP: 用readonly取代disabled来获取input值 submit a disabled input in a form could not ge
2016-08-30 02:21 2706The form is like below; <f ... -
PHP7革新与性能优化
2016-08-30 02:20 2146有幸参与2015年的PHP技 ... -
Mysql: 图解 inner join、left join、right join、full outer join、union、union all的区别
2016-08-18 06:03 3122对于SQL的Join,在学习起来可能是比较乱的。我们知道, ... -
Comet 反Ajax: 基于jQuery与PHP实现Ajax长轮询(LongPoll)
2016-08-18 06:00 1377传统的AJAX轮询方式,客服端以用户定义的时间间隔去服务器上 ... -
PHP:ServerPush (Comet推送) 技术的探讨
2016-08-18 05:58 1039PHP中Push(推送)技术的探讨 [http://vi ... -
PHP: 手把手编写自己的 MVC 框架实例教程
2016-08-16 05:33 18131 什么是MVC MVC模式(Model-View-Con ... -
PHP5: mysqli 插入, 查询, 更新和删除 Insert Update Delete Using mysqli (CRUD)
2016-07-29 12:55 1747原文: PHP5: mysqli 插入, 查询, 更新 ... -
MongoDB 教程索引 (附有视频)
2016-07-27 10:54 736MongoDB 教程索引 MongoDB 教程一: ... -
Node.js 模块之Nimble流程控制
2016-07-18 12:59 1080NodeJS异步的特性有时候 ... -
Node.js web应用模块之Supervisor
2016-07-18 12:56 2327在开发或调试Node.js应 ...
相关推荐
在PHP编程中,`empty`, `isset`, 和 `is_null` 是三个常见的用来检查变量状态的函数,它们各自有着特定的用途和行为。理解和正确使用它们对于编写无错且安全的代码至关重要。 **1. `empty`** `empty` 函数用于检查...
在PHP编程中,正确理解和使用`empty`, `isset`, 和 `is_null`这三个函数至关重要,因为它们直接影响到代码的逻辑判断和错误处理。下面将详细解释这三个函数的用法和区别。 1. `empty()` 函数 `empty()` 用于检查...
以上就是PHP中empty、is_null和isset函数的详细解析和使用场景。了解这些函数的异同可以帮助PHP开发者更加精确地控制程序逻辑,避免因变量状态判断错误而引发的问题。在实际开发中,要根据具体的需求和场景来选择最...
在PHP编程语言中,了解如何正确使用`is_null`, `empty`, 和 `isset`这三个函数至关重要,因为它们在检查变量状态时起到关键作用。下面将详细阐述这三个函数的区别和使用场景。 1. `isset()` 函数: `isset()` 用于...
在PHP编程语言中,`is_null`, `empty`, `isset`, 和 `unset` 是四个非常常用的函数,它们各自有着特定的用途。理解它们的区别对于编写高效且无误的代码至关重要。 1. **`isset()`** `isset()` 函数用于判断一个...
在PHP开发中,empty()、isset()和is_null()是三个经常被用于变量状态检测的函数。它们各自的检测规则和应用场景都不尽相同。理解这三个函数的不同之处对于编写健壮的代码非常重要。下面将详细解释这三个函数的用法和...
做php开发时候,通常会用到empty,isset,is_null这几个函数,使用不当的话甚至给自己的程序带来一些安全隐患的bug。很多时候,对于isset,empty都认为差不多。因此开发时候,就没有注意,一段作为流程判断时候,就出现...
2. 特殊变量处理:如空字符串、`0`值(包括整数、浮点数和字符串“0”)、`NULL`和空数组,这些在`isset()`中被视为已设置的变量,但在`empty()`中会被认为是空的。 下面是一些使用`isset()`和`empty()`进行判断的...
iOS一行代码集成空白页面占位图(无数据、无网络占位图)_emptyView-empty_set_LYEmptyView
在PHP编程中,判断数组是否为NULL是一个常见的需求,特别是在处理用户输入或数据...而如果你需要区分NULL和空数组,`is_null()`或`empty()`则更合适。了解这些方法的差异可以帮助我们写出更健壮、更具可读性的代码。
然而,这些模版都包含了一些默认的功能和文件,对于某些希望从零开始构建应用,或者需要特殊项目结构的开发者来说,可能会过于繁琐。"Empty Application"模版就是为了解决这个问题,它提供了一个精简到极致的起始点...
在PHP开发过程中,可能会遇到一个名为“324 ERR_EMPTY_RESPONSE”的错误,这通常表示浏览器没有接收到服务器的完整响应。这个错误可能是由于多种原因引起的,包括但不限于服务器配置问题、PHP脚本错误、网络问题或者...
可用于UnityVR开发,3D游戏开发,高清天空盒子Skybox素材,游戏环境背景素材,无水印。 让你身临其境的天空盒子,各类题材丰富,都是辛苦搜罗所得的高清exr... 4-用刚创建的Material代替项目中原本的系统默认Skybox