PHP中关于NULL的作用
既然有unset,为什么还要用NULL,unset同时还能释放资源。。我看到ecshop的源码某个类里面有这一行声明var$link_id=NULL;这样有什么作用?声明...
既然有unset,为什么还要用NULL,unset同时还能释放资源。。
我看到ecshop的源码某个类里面有这一行声明var $link_id=NULL;这样有什么作用?声明了后又销毁?? 展开
我看到ecshop的源码某个类里面有这一行声明var $link_id=NULL;这样有什么作用?声明了后又销毁?? 展开
展开全部
特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
被赋值为 NULL。
尚未被赋值。
被 unset()。
var $link_id=NULL 和var $link_id 是同一个效果,只不过var $link_id=NULL 是显示声明为NULL。 也许这是ecshop的编程规范来的。
一个刚声明的未被赋值的变量又何须unset呢。
var $link_id=NULL是声明值为空的变量,unset是销毁一个有值或者无值的变量,即使你销毁后再使用,也只是使用了一个变量名一样的新变量,而不是你unset之前的变量。楼主觉得有矛盾吗。
在下列情况下一个变量被认为是 NULL:
被赋值为 NULL。
尚未被赋值。
被 unset()。
var $link_id=NULL 和var $link_id 是同一个效果,只不过var $link_id=NULL 是显示声明为NULL。 也许这是ecshop的编程规范来的。
一个刚声明的未被赋值的变量又何须unset呢。
var $link_id=NULL是声明值为空的变量,unset是销毁一个有值或者无值的变量,即使你销毁后再使用,也只是使用了一个变量名一样的新变量,而不是你unset之前的变量。楼主觉得有矛盾吗。
追问
var $link_id=NULL是声明值为空的变量?。。。那var $link_id='';呢?这两者不一样的吧?
如果$link_id=NULL isset($link_id),则返回false;但是$link_id=''; isset($link_id)则返回true喔。
追答
你追问的问题问得好!是我之前把“没有值”和“值为空”理解错了。
想找到答案就看手册吧,貌似unset是没有返回值的,只有在php3中有。手册手册……
展开全部
null 是空值 $link_id=NULL 变量 $link_id是定义的
unset 是完全释放 连定义都没有
unset 是完全释放 连定义都没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我只能说,先定义一个变量为NULL,后面赋值,这样就可以直接用if($变量名)来判断是否有值了,
声明后再销毁,省资源
声明后再销毁,省资源
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询