2

如果我打电话:

www.*.com?你好

if($_GET["hello"]){
}

它总是会返回 false,因为 ?hello 变量需要设置为...

有没有办法得到?部分而不事先将变量设置为anythign?

4

5 回答 5

6

您可以检查变量是否设置如下:

if(isset($_GET["hello"])){

}

有时key_exists()会更好,因为如果$_GET["hello"] == null你能得到false

if (key_exists("hello", $_GET)) {

}
于 2012-05-22T11:46:31.903 回答
1

$_GET["hello"]是假的,检查它是否被设置

if (isset($_GET["hello"])) {
   //do stuff
}
于 2012-05-22T11:47:17.327 回答
1

使用array_key_exists

if (array_key_exists("hello", $_GET)) {
}

请阅读 this 以了解isset 和 array_key_exists 之间的区别

于 2012-05-22T11:47:25.727 回答
0

通常的方法是检查它:

if(isset($_GET["hello"]) && $_GET["hello"] != ""){
  //code
}
于 2012-05-22T11:50:28.610 回答
0
if(!empty($_GET["hello"]))
{

}

而不是同时检查 isset 和 $_GET != ""。

于 2012-05-22T11:54:51.990 回答