我们可以在PHP中设置变量大小吗?如果是,那么如何?

问题描述:

in lang我们设置了这样的尺码int a[10]; so Like“C”lang。我们可以在PHP中将大小设置为变量吗?我们可以在PHP中设置变量大小吗?如果是,那么如何?

+2

不。在PHP中,阵列会根据需要自动收缩和展开。 – Barmar 2014-10-09 13:49:15

+0

嘿,这个问题出了什么问题? – georg 2014-10-09 13:54:51

+0

有效的问题,那么为什么所有downvotes - downvoters可能实际上发现了一些他们从来不知道自己从@ georg的答案 – 2014-10-09 14:22:43

PHP内置数组基本上是哈希表,而不是像C中那样的顺序内存块。因此,术语“大小”实际上并不适用于此。基于散列表的实现是灵活的(你可以随时增长和缩小数组),但是效率并不高,所以php开发人员增加了另一种数组类型SplFixedArray,其工作方式类似于C数组:提供数组大小,并且这个大小在程序的生命周期中保持不变。这使阵列操作速度更快(根据php.net上的评论,高达30%)。

+0

注意,您可以调整SPLFixedArray创建后的大小,但它不被推荐,因为它是一个昂贵的操作执行时间条款 – 2014-10-09 14:41:57