Sai qualsiasi soluzione per recuperare l'errore fatale di PHP: "ammessi dimensione della memoria ... esaurito"Come recuperare da un errore fatale "ammessi memoria dimensioni esausto"
Ho una funzione di spegnimento che viene chiamato quando viene visualizzato un errore irreversibile. Questa funzione crea una ErrorException da esso e la registra.
Il problema è: quando non c'è più memoria disponibile, non è possibile registrare l'errore (accedo a Firebug, tramite FirePHP, con Zend Framework).
Così che cosa intendo per "come recuperare da esso", è come eseguire log degli errori di base, e lasciare che Zend Framework inviare le intestazioni, in modo che l'errore viene registrato (in Firebug nel mio caso) come qualsiasi altro errore?
Grazie
È possibile espandere il limite di memoria durante l'esecuzione? (solo per avere abbastanza memoria per completare il rendering del sito) Suppongo che non sia possibile elencare tutti gli oggetti in memoria e "uccidere" quello che è troppo grande, come avrei potuto con i processi? (So che questo è chiedere la luna, ma chissà) –
Non ci credo. Se si tratta di una cosa particolare che si imbatte in questo problema, allora si dovrebbe semplicemente evitare il problema e aumentare il limite di memoria (per quello script). Non è quello che vuoi, ma non credo che tu abbia altra scelta. –
No 'sfavorevole no. Solo per curiosità, quanto è il limite di memoria attuale e che tipo di sito web è? Non sono sicuro di quale sia l'importo consigliato, ma tendo ad impostarlo su 1/4 della RAM sulla macchina. Forse nei punti chiave del tuo script potresti chiamare memory_get_usage e se si sta alzando, aumentare l'impostazione memory_limit prima che entri in funzione? Non sono sicuro senza conoscere il layout e lo scopo del tuo script. –