我应该如何检查是否在PHP中存在if值


How should I check to see a if value exists in PHP?

使用PHP有很多方法可以查看一个值是否存在。有isset, !=false, !==false, !empty等。在以下情况下,哪一个将是最好的(快速和准确的)?

if($_GET['test'])
...

if (isset($_GET['test'])) { // use value }

if(array_key_exists($_GET, "test"))

array_key_exists返回true如果键/变量存在且不为空,Isset将返回true。

Isset可能是最好的,因为它检查url是否包含"?test="。如果你想确保它不是空的,你必须进一步检查。

我会使用php5的一种get:

$test = filter_input(INPUT_GET, 'test', FILTER_SANITIZE_STRING);
if($test){
  //do something
}
这里的

引用,您可以使用它们进行验证和清理。您可以使用"filter_input_array"来获取完整的输入类型

isset函数只检查它的可用性,你也必须使用empty函数来查看它是否已设置,而不是空的,也如:

if (isset($_GET['test']) && !empty($_GET['test'])) {