1

LAMP-Stack を使用している debian サーバーで奇妙な動作が発生しています。

この簡単なテストは私の問題を説明しています: これは私の test.php スクリプトです:

<?php
  $params = $_GET;
  print_r($params);
?>

URL を発行した場合:http://localhost/test.php?arr[a]=1&arr[b]=2&arr[c]=3&test=xyz サーバーが返すことを期待します:

    
配列
(
    [arr] => 配列
        (
            [a] => 1
            [ロ] => 2
            [c] => 3
        )
    [テスト] => xyz
)

しかし、私は得るだけです:

配列
(
    [arr] => 配列
        (
            [a] => 1
        )
    [テスト] => xyz
)

php.ini、apache configなどを確認しました。パラメータが正しく処理されない理由がわかりません。私でさえ

$_SERVER[REQUEST_URI]
variable は正しいパラメーターを示していますが、単に処理されていません。

何か案は?

4

2 に答える 2

1

あなたは何か間違ったことをしているに違いありません:

電話するとwww.mysite.com/test.php?arr[a]=1&arr[b]=2&arr[c]=3&test=xyz

そして、print_r($_GET);

私は得る

Array ( [arr] => Array ( [a] => 1 [b] => 2 [c] => 3 ) [test] => xyz )

アップデート

var_dump からの出力:

array(2) { 
  ["arr"]=> array(3) { ["a"]=> string(1) "1" ["b"]=> string(1) "2" ["c"]=> string(1) "3" }
  ["test"]=> string(3) "xyz" 
}
于 2012-10-26T15:25:05.263 に答える
0

私は最終的に問題を理解しました:

これは、SUSE Enterprise Linux 上の PHP 5.3.8 のバグです。管理者に PHP 5.3.17 にアップグレードしてもらったところ、この誤動作はなくなりました。

于 2012-11-02T09:42:14.017 に答える