Limiti di memoria OSX php.ini
-
22-07-2019 - |
Domanda
Quando si utilizza l'ultima versione di OS X (10.6), il limite di memoria di 8 M (o qualunque cosa tu abbia impostato) significa che ora stai utilizzando 8 000 000 byte anziché 8 388 608?
Soluzione
C'è una voce nelle FAQ di PHP sulla notazione abbreviata :
Alcune direttive PHP possono anche assumere valori di byte abbreviati, al contrario solo per valori di byte interi. Cosa sono tutti i byte stenografici disponibili opzioni? E posso usarli fuori di php.ini?
Le opzioni disponibili sono
K
(per Kilobyte) ,M
(per Megabyte) eG
(per Gigabyte; disponibile da PHP 5.1.0) , non fanno distinzione tra maiuscole e minuscole. Qualsiasi altra cosa assume byte. 1 M equivale a un Megabyte o 1048576 byte . 1K è uguale a un Kilobyte o 1024 byte. tu non possono usare queste notazioni stenografiche al di fuori di php.ini, usa invece un valore intero di byte. Vedi ilini_get ()
documentazione per un esempio su come convertire questi valori.
Quindi, nel tuo caso, 8M non significa 8.000.000 di byte, ma significa 8 388608 byte.
(Questo non dipende dal sistema operativo in uso: il calcolo viene eseguito da PHP e memory_limit
è implementato anche da PHP)