我有一个类似的网址:
http://mysite.com/index.php?somename=somevalue
我通常会通过以下方式检查somename是否存在:
if (isset($_GET['somename'])) {
但是,我看到很多人最近这样做了:
if ($_GET['somename'] != NULL) {
我的问题是,要么比其他方式更好?
答案 0 :(得分:6)
与null
支票不同,
isset($_GET['somename']
不会抛出“未定义的索引”通知,所以它绝对是两者中更优先的。
array_key_exists("somename", $_GET);
也有效。
如果您想禁止空值,可能需要将其与null
检查结合使用。
答案 1 :(得分:0)
答案 2 :(得分:0)
最好的方法通常是两者兼顾。 isset检查变量是否存在,同时您还应检查它是否为NULL,以便它不会破坏任何后续检查。
if(isset($_GET['somevalue']) && $_GET['somevalue'] != NULL)