代码之家  ›  专栏  ›  技术社区  ›  Johannes Gorset

查询变量不能超过512个字符

  •  1
  • Johannes Gorset  · 技术社区  · 15 年前

    我正在努力读取包含512个以上字符的查询变量。 $_GET 数组。如果我使用 parse_string 但是,我可以从生成的数组中很好地读取它。

    例子:

    # GET /test.php?foo=<string with 513 characters>&bar=bar HTTP/1.1
    
    <?php
    var_dump($_GET['foo']); # NULL
    var_dump($_GET['bar']); # "bar"
    
    parse_str($_SERVER['QUERY_STRING'], $output);
    var_dump($output['foo']); # <string with 513 characters>
    ?>
    

    这对我来说毫无意义,因为 $GET 使用 parse_str 在内部从查询字符串派生查询变量。我错过什么了吗?

    1 回复  |  直到 15 年前
        1
  •  3
  •   Pekka    15 年前

    有一个PHP错误报告。 #50449

    获取值超过512个字符的参数不会显示在 $获取和$请求数组。自从升级到 5.3.1

    它说是苏霍辛导致了这种行为。

    推荐文章