【发布时间】:2010-08-04 18:31:24
【问题描述】:
如何判断$_GET是否为空?
【问题讨论】:
如何判断$_GET是否为空?
【问题讨论】:
你自己说的,看看是不是empty:
if (empty($_GET)) {
// no data passed by get
}
看,PHP 就是这么简单。您可以简单地写下您的想法;)
这种方法相当安全。如果 $_GET 未设置(不太可能,但可能),!$_GET 可能会给您一个未定义的变量 E_NOTICE。
【讨论】:
我想不需要任何运算符的最简单方法是
if($_GET){
//do something if $_GET is set
}
if(!$_GET){
//do something if $_GET is NOT set
}
【讨论】:
只是在这里提供一些变化:你可以检查
if ($_SERVER["QUERY_STRING"] == null)
它与测试$_GET 完全相同。
【讨论】:
!isset、null 或''。 null 在这里工作吗,你测试了吗?
array_key_exists() 检查。
<?php
if (!isset($_GET) || empty($_GET))
{
// do stuff here
}
【讨论】:
!isset($_GET) 这里不需要,if (empty($_GET)) 就足够了
variables_order)
empty simple 会检查自己是否设置了变量,因此使用 isset 进行检查是多余的。
empty 确实是一种语言结构。
if (!$_GET) echo "empty";
为什么需要这样的检查?
哈哈
你们太直接了。
不要冒犯,但有时根本不介意
$_GET 是一个非常特殊的变量,不像其他变量。
它应该始终设置。无需将其视为其他变量。
当 $_GET 未设置并且是预期的 - 这是 紧急情况 情况,这就是“未定义变量”通知发明的目的
【讨论】:
简单。
if (empty($_GET)) {
// $_GET is empty
}
【讨论】:
我会使用下面的 if 语句,因为它更容易阅读(以及将来修改)
if(!isset($_GET) || !is_array($_GET) || count($_GET)==0) {
// empty, let's make sure it's an empty array for further reference
$_GET=array();
// or unset it
// or set it to null
// etc...
}
【讨论】:
if (!empty($_GET)) { } 更容易阅读。如果数组不包含项,empty() 返回 TRUE。
这里有 3 种不同的检查方法
<?php
//Method 1
if(!empty($_GET))
echo "exist";
else
echo "do not exist";
//Method 2
echo "<br>";
if($_GET)
echo "exist";
else
echo "do not exist";
//Method 3
if(count($_GET))
echo "exist";
else
echo "do not exist";
?>
【讨论】: