我最近被安置在一个带有PHP的项目上,而且我对PHP知之甚少。站点中有几个实例,在单击按钮时,用户被重定向到具有一些URL参数的另一个页面。然后,下一页使用$_GET
获取这些参数并继续。
代码中的另一个问题导致页面重新加载没有参数的第二页,因此使用$_GET
会返回错误,但是如果修复了其他问题,我无法想到为什么参数不会存在。
在调试时,我发现建议始终使用$_GET
检查isset()
,但理论上,当那些参数不存在时,应该永远不会有实例(否则其他东西确实是错误的服务器或代码)。
是否仍然值得进行检查并制定备份解决方案,即使不需要它也是如此?我想确保我不会忽视其他一些我可能不知道的潜在问题。
答案 0 :(得分:3)
在应用任何逻辑之前,最好先检查一下你的变量。
建议使用 !empty()
代替isset()
,因为它会检查该变量是否已初始化并且也有一些值。
如果数组count($array)>0
可以用作检查。
为何使用!empty()
点击此处: - !empty() Vs isset()
答案 1 :(得分:1)
如果您期望或要求通过$ _GET发送数据,您应该检查它是否已设置。特别是因为可以容易地操纵该数据。也像@Alive to Die说!empty()
更好。
isset()检查变量是否包含值(False,0或 空字符串),但不是NULL。如果var存在则返回TRUE;假 除此以外。另一方面,empty()函数检查是否 变量的空值为空字符串,0,NULL或False。