【发布时间】:2014-04-02 23:47:02
【问题描述】:
小备注
阅读max_input_vars 变量让我阅读了很多关于PHP 处理数组的内部机制。这不是一个真正的问题,而是answering my own question“为什么我们真的需要这个 max_input_var”。它没有本地化,实际上与许多其他编程语言有关,而不仅仅是 php。
一个问题:
比较这两个小的 php 脚本:
$data = array();
for ($key = 0; $key <= 1073709056; $key += 32767){
$data[$key] = 0;
}
可以查看it here。一切正常,没有什么意外。执行时间接近0。
而且这几乎是相同的(差异在于 1)
$data = array();
for ($key = 0; $key <= 1073709056; $key += 32768){
$data[$key] = 0;
}
检查it here。没有什么是正常的,一切都是出乎意料的。您超出了执行时间。所以它至少慢了 3000 倍!
问题是为什么会这样?
我将它与答案一起发布在这里,因为这极大地提高了我对 php 内部知识的了解,并且我学到了有关安全性的新知识。
【问题讨论】:
-
我写道,区别在于$key旁边的数字。数字相差 1。
标签: php arrays performance security