今天发现PHP的isset函数不能谨慎使用有个坑
背景
今天在写php代码的时候遇到了isset的坑,下面我来介绍一下我的代码
上面代码的意思和我写的业务代码情况一样,为了不会让程序发生变量为定义的错误,我使用了isset函数来做判断,但是正是因为我这样使用了isset函数它却报错了。原因何在呢?
上面的代码我做了改动,改动了13-14行的代码就可以实现我的目的了.下面的图就是
这样就不会报告变量未定义的错误了。
原因是isset只能检查一个变量的情况 也就是说 在进行isset检查之前,程序会先取出$user[‘3’]中的值,可是这是值没有,还没有等到isset执行就已经报告变量未定义的错误了,这下大家懂了吧。