2014-10-12 20 views
5

Ogni tanto un ridimensionamento delle immagini script sul nostro sito avrà esito negativo con il seguente errore:Opcache causa l'errore fatale di PHP: Class ' xa0L xdaor x7F' non trovato

PHP Fatal error: Class '\xa0L\xdaor\x7f' not found ... on line 4

La linea attuale 4 lo script in questione è:

$photo = new Photo($photo_id); 

non ho idea di dove il codice esadecimale \xa0L\xdaor\x7f nel log degli errori proviene. Lo script funzionerà correttamente e viene eseguito relativamente frequentemente per un giorno o due, quindi inizia a fallire ogni volta, con quell'errore.

Se corro opcache_reset(), gli errori si interrompono.

Qualcuno ha idea di cosa potrebbe causare questo problema?

UPDATE: Non ho ricevuto risposta, quindi ho semplicemente escluso questo file dalla cache dell'opcode utilizzando opcache.blacklist_filename.

+0

Si prega di includere il metodo di costruzione per 'Photo'. Inoltre, il messaggio di errore * sempre * contiene '\ xa0L \ xdaor \ x7f' o il valore cambia? Se cambia, potresti avere a che fare con la memoria o il danneggiamento del disco. –

+0

Ciao Mr. Llama, ho visto anche questo codice esadecimale: \ xa0 \ xfc5 \ x8b \ xe9 \ x7f. Stranamente, tornando un po ', ho anche trovato questo: "Errore Fatal PHP: Classe' Foto 'non trovata" - così ad un certo punto ha ottenuto il nome della classe corretto ma non riusciva a trovarlo. Posso incollare il codice dal costruttore, ma è da un ORM personalizzato, e diventa piuttosto complicato - se il problema è che non riesce a trovare la classe, o corrompe il nome della classe, il costruttore potrebbe fare qualche differenza? Se non hai voglia di sbattere la testa contro, sono felice della mia soluzione alternativa alla lista nera. Ho solo pensato che fosse un errore strano, tutto qui. – cshehadi

risposta

0

A volte la mia intera risposta PHP era un mucchio di codici esadecimali come questo.

Ho avuto che quando è stato impostato opcache.fast_shutdown="1".