⑴ php中判断变量为空的几种方法
if (isset($obj)) {
echo "This var is set set so I will print.";
}
isset函数是检测变量是否设置。
格式:bool isset ( mixed var [, mixed var [, ...]] )
返回值:
若变量不存在则返回 FALSE
若变量存在且其值为NULL,也返回 FALSE
若变量存在且值不为NULL,则返回 TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节(”\0″)并不等同于 PHP 的 NULL 常数。
警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。
⑵ php语言判断零和空怎么判断啊
empty绝对可以,是你用错了吧,php5.5之前参数必须是变量参数,可以判断以下为空的情况:
当var存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE.
以下的东西被认为是空的:
"" (空字符串)
0 (作为整数的0)
0.0 (作为浮点数的0)
"0" (作为字符串的0)
NULL
FALSE
array() (一个空数组)
$var; (一个声明了,但是没有值的变量)
你要判断的是什么类型变量,写详细一点!
⑶ 请问路由器的NULL0接口是用来做什么的
NULL0是属于路由器的逻辑接口,NULL0接口总是处于Up状态,但不转发任何报文。当NULL0接口接收到报文后,会把报文丢弃。不能在NULL0接口上配置IP地址,也不能在NULL0接口上封装任何链路层协议。NULL0主要用于防止路由环路或用于过滤数据包。
⑷ php null和null一样吗
NULL和0是值相等而类型不一样! 注意: NULL是一种特殊的类型.两种情况下为NULL1. $var = NULL;2. $var; 3.0、"0"、NULL以及没有任何属性的对象都将被认为是空的。
⑸ php中 "" 0 empty null的区别是什么呢
"" 双引号,表示一个空的字符串,它的数据类型为字符串类型。
0 零,表示数字0,它的数据类型为整型
null 表示表示一个变量没有值。一个变量为null有三种情况:
1.被赋值为 NULL 。
2. 尚未被赋值。
3. 被 unset() 。
empty 是php的一个判断变量为空的函数,如果 变量 是非空或非零的值,则 empty() 返回 FALSE 。换句话说,""、0、"0"、 NULL 、 FALSE 、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果变量 为空,则 empty() 返回 TRUE 。
⑹ php null 占储存空间么
特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
被赋值为 NULL。
尚未被赋值。
被 unset()
从上面来看,这个变量还是存在的,只是值为NULL,只要变量存在,那么就占用存储空间的
而且
官方PHP是用C实现的变量的值存储到以下所示zval结构体中。 zval结构体定义在Zend/zend.h文件,其结构如下:
1 typedef struct _zval_struct zval;
2 ...
3 struct _zval_struct {
4 /* Variable information */
5 zvalue_value value; /* value */
6 zend_uint refcount__gc;
7 zend_uchar type; /* active type */
8 zend_uchar is_ref__gc;
9 };
如果一个php变量的值为null,那么只需要将type 设置为 IS_NULL,即可,value不用设置
如果 refcount__gc 的值为0,那么这个变量就会被会垃圾回收,也就是很快就会不存在,否则就会一直存在,占用着自己的存储空间
因此只要变量存在(即还未被垃圾回收机制回收),就会一直占用着存储空间,只是他的值为NULL
⑺ php中0,空,null和false的区别
0 ,在所有计算机语言中,基本非0为真,0为假。0 == false null 是空 这个很有意思。因为我也不知它是什么类型的,但 null ==false是必然的。在if判断是逻辑就是这样 empty 这个也是很有意思是,因为这会出现很多陷阱。首先,empty对于一切未声明定义的变量,直接返回true,对于已声明的变量,如果是非空字符串 或 非0 返回false; 但是0的时候,它却是返回真的。这个是出于什么考虑我也不清楚。但它一直出乎我的逻辑。 总得关系就是 0==false ==null (empty是一个方法 ,所以不能跟变量作比较的。)
⑻ php 判断不能为空,0是属于空吗
"" 双引号,表示一个空的字符串,它的数据类型为字符串类型。
0 零,表示数字0,它的数据类型为整型
null 表示表示一个变量没有值。一个变量为null有三种情况:
1.被赋值为 NULL 。
2. 尚未被赋值。
3. 被 unset() 。
empty 是php的一个判断变量为空的函数,如果 变量 是非空或非零的值,则 empty() 返回 FALSE 。换句话说,""、0、"0"、 NULL 、 FALSE 、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果变量 为空,则 empty() 返回 TRUE 。
⑼ PHP 0 和null的区别
NULL和0是值相等而类型不一样!
注意:
NULL是一种特殊的类型.
两种情况下为NULL
1. $var = NULL;
2. $var;
3.0、"0"、NULL以及没有任何属性的对象都将被认为是空的。
举例如下:
<?php
$test=0;
if($test==''){
echo'<br/>在php中,0即为空';//被输出
}
if($test===''){
echo'<br/>在php中,0即为空';//不被输出
}
if($test==NULL){
echo'<br/>在php中,0即为空';//被输出
}
if($test===NULL){
echo'<br/>在php中,0即为空';//不被输出
}
if($test==false){
echo'<br/>在php中,0即为空';//被输出
}
if($test===false){
echo'<br/>在php中,0即为空';//不被输出
}
?>