将大量记录存储到PHP数组中的最有效方法

将大量记录存储到PHP数组中的最有效方法,php,mysql,arrays,Php,Mysql,Arrays,我有一个mysql UID数组被返回并存储到PHP中的数组中,然而,由于有超过100000条记录,这需要很长时间才能完成。我只是想知道是否有一种更快更有效的方法将大量记录存储到一个数组中。感谢您的意见 首先要问的是:你真的需要所有这些记录吗?只过滤必要的UID可以节省大量时间,而无需更改大量代码。如果您事先知道有多少个UID,请使用SPLFixedArray以更好地使用内存不幸的是,是的,我需要存储在阵列中的所有UID。我的工作是处理php,所以我无法切换到另一种语言。我看了SPLFixedAr

我有一个mysql UID数组被返回并存储到PHP中的数组中,然而,由于有超过100000条记录,这需要很长时间才能完成。我只是想知道是否有一种更快更有效的方法将大量记录存储到一个数组中。感谢您的意见

首先要问的是:你真的需要所有这些记录吗?只过滤必要的UID可以节省大量时间,而无需更改大量代码。如果您事先知道有多少个UID,请使用SPLFixedArray以更好地使用内存不幸的是,是的,我需要存储在阵列中的所有UID。我的工作是处理php,所以我无法切换到另一种语言。我看了SPLFixedArray,这似乎是个好主意。我的问题是,如果UID在1到100000之间,我是否需要不断更改数组长度,或者我是否能够将其设置为表中的最大int大小,它将存储所有内容?一旦实例化了SPLFixedArray,尽可能避免更改其大小,因为这会带来很大的性能开销:SPLFixedArray的内存效率显著提高,速度略快于标准PHP数组,但如果从数据库填充此数组,则会降低灵活性;然后,在实例化SPLFixedArray之前,您应该能够获得查询返回的记录数,因此不需要更改其大小