Heim > Backend-Entwicklung > PHP-Tutorial > 掉进PHP中的坑-null,零,false,空字符串

掉进PHP中的坑-null,零,false,空字符串

WBOY
Freigeben: 2016-06-13 11:51:38
Original
879 Leute haben es durchsucht

掉进PHP中的坑--null,0,false,空字符串

今天使用公司中的框架进行开发时发现update数据的时候,那些空字符串并没有更新导数据库中,也就是说类似于0,空字符串,null这些出现以后并没有更新到数据库中:

仔细调试的时候发现,使用了empty()这个函数:

        if(!empty($params['id'])) {            $filters[] = array('id', '=', $params['id']);        }
Nach dem Login kopieren

然后自然就没有了这个条件,去更新数据库了,这个坑怎么填呢?就是不要使用empty(),使用isset():

        if(isset($params['config_id'])) {            $filters[] = array('config_id', '=', $params['config_id']);        }
Nach dem Login kopieren

这两个函数的区别:

光看名字已经能看出来了empty就是看这个变量是否为空,isset看这个变量是否设置:

用自己的话来说就是:

empty就是判断这个变量里面存储的东西是0,null,false,空字符串。

isset就是这个变量是否已经声明,它可以是0,null,false,空字符串。

empty的范围比较大,isset的范围比较小。


如果要判断的非常精确:建议使用 ‘===’,这样的话,php会去检测两个变量的类型和值是否完全像等。


因此emtpy,isset,===需要看使用场景合理使用。



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage