我在PHP 2.0中使用PHP 5.3.8.我也在使用Symfony 2,但这不是脚本失败的地方.我有一个包含数组变量的表单:
<form action="/app_dev.php/admin/position/create" method="post">
<input type="text" id="po_name" name="po[name]" required="required" maxlength="50">
<input type="text" id="po_role" name="po[role]" required="required" maxlength="20">
</form>
Run Code Online (Sandbox Code Playgroud)
直接在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();
Run Code Online (Sandbox Code Playgroud)
基本上它只保留数组中的第一个变量.如果我将变量的名称从po [role]更改为ba [role],则$ _POST输出:
array(1) {
["po"]=> array(1) { ["name"]=> string(9) "Developer" },
["ba"]=> array(1) { ["role"]=> string(9) "ROLE_USER" }
}
Run Code Online (Sandbox Code Playgroud)
我发现可能导致此问题的典型问题是由于以下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 …Run Code Online (Sandbox Code Playgroud) 一切都在标题中。我可以访问速度较慢的服务器,并且希望跟踪服务器配置更改、在本地更改配置并轻松部署更改。
我主要关心的是安全性,因为服务器配置通常只有有权访问服务器的人才能访问。