很多新手写PHP代码,碰到"undefined index"的警告,页面上一堆Notice提示,今天说一下这个警告是什么意思,怎么解决。
警告是什么意思
这个警告是说,你代码里用了一个数组里不存在的键,比如$_POST['username'],但是用户根本没传username这个参数,PHP就提示你这个键没定义。不影响程序运行,但是一堆警告在页面上,既不专业,又暴露路径。
怎么解决
用之前先判断这个键存在不存在,比如isset($_POST['username']),存在再用,不存在就给个默认值,就不会报警告了。别直接读数组里不存在的键。
临时屏蔽警告
上线之后,在PHP配置里把错误提示改成只显示错误,不显示Notice和Warning,这些小警告就不会出现在页面上,不影响程序运行,也不影响安全。
别在代码里写error_reporting(0)屏蔽所有错误,那样真出了致命错误你都看不到,只屏蔽通知和警告就行。
本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。
0