|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre émérite
![]() Inscription : juin 2002 Messages : 1 013 ![]() |
il m'arrive de créer des images de très grandes dimensions (4000 * 10000)
cela fonctionne très bien chez moi en local, mais pas chez mon hébergeur qui me limite à 128M de mémoire (je ne puis trop le blâmer, c'est déjà pas mal pour un mutualisé) et je reçois donc le message Fatal error: Allowed memory size of 134217728 bytes etc je souhaite intercepter cette erreur j'ai essayé avec set_error_handler avec le code suivant, mais cela n'a pas fonctionné (sans-doute est-ce une erreur non gérée comme il y en a beaucoup) Code :
merci d'avance |
||
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Inscription : juin 2002 Messages : 1 013 ![]() |
Je n'ai pas reçu beaucoup de réponses...
Mais en essayant et cherchant j'ai trouvé quelque chose, je le note ici pour ceux que cela intéresse : Une image dont la couleur est codée en 24 bits (jpg par exemple) l'est donc en 3 bytes. Chaque pixel de l'image doit contenir ces 3 bytes (octet). Donc, la taille théorique d'une image devrait être de largeur * hauteur * 3. En réalité, il y a un peu plus, car d'autres informations (que je ne connais pas, tel que le type de l'image) y sont stockées. Une page php utilise certainement d'autres ressources mémoire (ne me demandez pas lesquelles je n'y connais rien) et j'ai constaté en faisant des essais chez mon hébergeur mutualisé que multiplier cette taille par un facteur de 1.6 paraît faire l'affaire. Je crois que connaître le vrai facteur est un jeu de trial and error, et je suppose que plus l'hébergeur dispose de capacité, moins ce facteur doit être élevé. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com