【发布时间】:2013-07-28 12:32:51
【问题描述】:
在 32 位系统上,一个数组可以有多达 4294967295 个元素(根据另一个线程上的 Artefacto's post)。
但是,count 以 int 形式返回元素的数量,在 32 位系统上,一个 int 最多为 2147483647。
当数组的元素超过 2147483647 个时,count 会返回什么?
【问题讨论】:
-
你有没有 200 TB 内存的电脑?
-
实际上,我认为在 32 位系统上由于地址空间不足,它不可能有那么多元素,即使底层 C 结构的 size 字段可以容纳那么大的值。
-
@mario,这不是重点。
-
@mario 另外,你是怎么达到 200 TiB 的?这将是每个元素 51,2 KiB,这对于许多类型的记录来说有点过多。
标签: php arrays php-internals