¿Hay un límite para una matriz en PHP?PHP: ¿las matrices tienen un tamaño máximo?
Respuesta
La única cosa que he encontrado en referencia a php es esto desde bytes.com/forum:
No creo que hay un límite de lo grande que puede ser un array, pero hay un límite en cuánta memoria puede usar su script
La directiva 'memory_limit' en el archivo de configuración php.ini contiene la cantidad máxima de memoria que pueden consumir los scripts. Intenta cambiar esto, mira si eso ayuda.
Sí, hay un límite en la cantidad máxima de elementos. La estructura de tabla hash (arrays son básicamente envolturas alrededor de una tabla hash) se define como este (PHP 5.3):
typedef struct _hashtable {
uint nTableSize;
uint nTableMask;
uint nNumOfElements;
ulong nNextFreeElement;
Bucket *pInternalPointer; /* Used for element traversal */
Bucket *pListHead;
Bucket *pListTail;
Bucket **arBuckets;
dtor_func_t pDestructor;
zend_bool persistent;
unsigned char nApplyCount;
zend_bool bApplyProtection;
#if ZEND_DEBUG
int inconsistent;
#endif
} HashTable;
dado que
typedef unsigned int uint;
el límite es el tamaño máximo de un unsigned int (típicamente 2^32-1 en un sistema operativo de 32 bits y en la mayoría de los sistemas operativos de 64 bits).
En la práctica, sin embargo, excepto en máquinas con mucha memoria RAM y entradas de 32 bits, siempre alcanzará el límite de memoria antes de que esto se convierta en un problema.
Probablemente encontrará que se encuentra con serios problemas de rendimiento rellenando y desreferenciando elementos de la matriz antes de alcanzar el límite de memoria en la mayoría de los sistemas. – symcbean
@symcbean Lo dudo. Las búsquedas y adiciones toman un tiempo promedio constante. Lo único que puede llevar tiempo es cambiar el tamaño de la tabla hash, pero eso se evitará si se conoce el número total de elementos por adelantado. – Artefacto
@Artefacto, ¿por qué dices * la mayoría * de 64 bits del sistema operativo tiene solo 2^32-1 para unsigned int? – Pacerier
- 1. PHP - Tamaño máximo de carga total?
- 2. ¿Cargar el tamaño máximo en PHP?
- 3. Tamaño máximo de una sesión PHP
- 4. apego SmtpClient.Send tamaño máximo
- 5. ¿Las interfaces de PHP tienen propiedades?
- 6. ¿Cuál es el tamaño máximo para una int en PHP?
- 7. Caché ASP.NET tamaño máximo
- 8. Tamaño máximo para StringBuffer
- 9. SWT Tamaño máximo compuesto
- 10. Cursor Android tamaño máximo
- 11. ¿Están ordenadas las matrices asociativas de PHP?
- 12. ¿Comprobar PHP si las matrices son idénticas?
- 13. ¿Tamaño máximo de un método en Java?
- 14. acceder a las matrices asociativas en PHP
- 15. Tamaño máximo del objeto JSON?
- 16. tamaño máximo en BlobProperty (appengine)
- 17. PHP, La fusión de las matrices con las claves comunes
- 18. Android C2DM Registration_ID tamaño máximo
- 19. Tamaño máximo de conjunto de conexiones
- 20. Tamaño máximo de datos devueltos ajax
- 21. Tiempo máximo() | PHP
- 22. PHP: Agregar matrices juntas
- 23. Accediendo matrices dentro de matrices En PHP
- 24. Tamaño máximo de archivo y tamaño máximo de repositorio en Git?
- 25. PHP: Combinar matrices multidimensionales
- 26. tamaño máximo de atributos en AWS SimpleDB
- 27. ¿Es una mala práctica alterar las matrices dinámicas que tienen referencias sobre ellas?
- 28. Asignación de matrices del mismo tamaño
- 29. tamaño máximo de BSS y datos
- 30. Tamaño máximo permitido en el campo Texto de MySQL
PLaz? ¿Querías decir pl0x? –