1

$_GET配列に 512 文字を超えるクエリ変数を読み取るのに苦労しています。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してクエリ文字列からクエリ変数を導出するため、これは私には意味がありません。何か不足していますか?

4

1 に答える 1

3

PHP のバグ レポートがあります。#50449

値が 512 文字を超える GET パラメータは、$_GET および $_REQUEST 配列には表示されません。5.3.1 にアップグレードしてから、これに気付きました

そこには、行動を引き起こしているのはスホシンであると書かれています。

于 2010-11-09T12:21:35.450 に答える