我正在整理一个脚本,该脚本通过几个$ _GET变量,然后在脚本中用于计算报价等.
我遇到的噩梦就是能够确定它们中是否有没有值,例如?var1 = 500&var2 =&var3 =是,其中var2是那里的笨蛋.
根据所有$ _GET变量是否都有值,我会相应地采取不同的操作.
我研究并提出了这个选项:
<?php
foreach($_GET as $name => $value) {
if ($value == "") {
$proceed = 0;
} else {
$proceed = 1;
}
}
?>
Run Code Online (Sandbox Code Playgroud)
我只是为了测试目的而使用$ proceed来回复一段简单的文本.
这不起作用,我考虑过isset和empty但我相信在这种情况下这两个选项都没用.我在许多消息来源中读到,未给定值的$ _GET参数默认为"',所以我很困惑为什么这不起作用.
我不能在这里使用空,因为有时参数将被设置为0.
不言而喻,我已经打印了$ _GET的内容并获得了满意的结果,因此数据都很好.
任何帮助非常感谢.
缺少的参数不会出现在$_GET. 假设查询字符串如下所示:
index.php?page=5
Run Code Online (Sandbox Code Playgroud)
如果您需要一个id参数,它不会自动显示在$_GET. 您只需要在使用它们时检查 using isset(并针对空字符串) - 而不是先发制人。那是行不通的。