Переменные массива PHP $ _POST усекаются

Я использую PHP 5.3.8 с Apache 2.0. Я также использую Symfony 2, но этоне там, где скрипт не работает. У меня есть форма с переменными массива:


  
  

Прямо в файле app_dev.php (чтобы исключить Symfony из проблемы) я делаю:

echo file_get_contents("php://input"); // outputs: po%5Bname%5D=Developer&po%5Brole%5D=ROLE_USER
var_dump($_POST); // outputs: array(1) { ["po"]=> array(1) { ["name"]=> string(9) "Developer" } }
die();

По сути, он сохраняет только первую переменную в массиве. Если я изменю имя переменной с po [role] на ba [role], то $ _POST выводит:

array(1) {
  ["po"]=> array(1) { ["name"]=> string(9) "Developer" },
  ["ba"]=> array(1) { ["role"]=> string(9) "ROLE_USER" }
}

Типичные проблемы, которые я обнаружил, которые могут вызвать эту проблему, связаны со следующей конфигурацией php.ini, я также даю вам мои значения:

max_execution_time = 30
max_input_time = 60 
max_input_nesting_level = 64
max_input_vars = 1000
post_max_size = 8M
upload_max_filesize = 2M
memory_limit = 128M

Эти значения кажутся разумными, и я думаю, что нене вызывает проблемы, но не может быть уверен на 100%.

не установлено suhosin Насколько я'прочитал, что это может вызвать аналогичные проблемы тоже.

Это также похоже наЭта проблема но данное решение потребовало бы от меня переписать компонент HttpFoundation Symfony.

Также я неЯ хочу переписать переменную формы без и массив (например po [name] to po_name), поскольку форма автоматически генерируется Symfony, и это, кажется, базовая функция, с которой должен справиться PHP.

Кто-нибудь имеет представление об этой проблеме?

PS: это похоже на проблему, описанную вВот, Плюс проблема возникает в той же версии Suse (SUSE Linux Enterprise Server 11).

Ответы на вопрос(2)

Ваш ответ на вопрос