【问题标题】:PHP get ? without setting variable to anythingPHP 得到 ?没有将变量设置为任何东西
【发布时间】:2012-05-22 11:45:09
【问题描述】:

如果我打电话:

www.*.com?你好

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

它总是会返回 false,因为需要将 ?hello 变量设置为某个东西...

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

【问题讨论】:

    标签: php url get


    【解决方案1】:

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

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

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

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

    【讨论】:

    • 你是英雄..我是个笨蛋。
    • @JamesT 为你的自嘲幽默点赞。
    【解决方案2】:

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

    if (isset($_GET["hello"])) {
       //do stuff
    }
    

    【讨论】:

      【解决方案3】:

      使用array_key_exists:

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

      请阅读此邮件以获取difference between isset and array_key_exists

      【讨论】:

        【解决方案4】:

        通常的方法是检查它:

        if(isset($_GET["hello"]) && $_GET["hello"] != ""){
          //code
        }
        

        【讨论】:

          【解决方案5】:
          if(!empty($_GET["hello"]))
          {
          
          }
          

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

          【讨论】:

            猜你喜欢
            • 2015-06-26
            • 1970-01-01
            • 1970-01-01
            • 2018-05-19
            • 2014-06-19
            • 2012-07-26
            • 1970-01-01
            • 1970-01-01
            • 2019-08-17
            相关资源
            最近更新 更多