例如,我有以下代码
$array = [];
$array[0] = 0;
$array[1] = 1;
$array[2] = 'max';
foreach ($array as $value) {
// code
}
我想知道当我使用PHP_INT_MAX作为数组的索引时会对性能产生什么影响。
$array = [];
$array[0] = 0;
$array[1] = 1;
$array[PHP_INT_MAX] = 'max';
foreach ($array as $value) {
// code
}
无论是否,任何人都可以告诉我原因?谢谢!
答案 0 :(得分:2)
不,数组仍然只有3个元素,因此内存中只有3个元素。
对于这些元素来说,键的含义并不重要,尽管长字符串键的内存开销很小,因为PHP保持键和值的关系,而较长的字符串使用的内存比较短的串;但在这种情况下,您的键是固定大小的整数,无论值是-1,0,98还是PHP_INT_MAX