Chaud pour résoudre ce problème et pourquoi cela se produit?
Journal Zend Server:
Erreur irrécupérable PHP: la taille de mémoire autorisée de 134217728 octets est épuisée (essayé d'allouer 538798977 octets) dans C:\Program Files (x86)\Zend\Apache2\htdocs\test\modules\main.php à la ligne 3
Le fichier main.php
ne génère aucune erreur s'il est exécuté directement à partir du navigateur. Cependant, si j'utilise ses fonctions à partir d'un autre fichier PHO, Zend Log imprime l'erreur susmentionnée.
J'ai également rencontré ce problème.
Augmentez les variables suivantes pour que l'exécution de votre page ne s'arrête pas:
max_input_time
memory_limit
max_execution_time
Augmentez la limite de mémoire dans php.ini
ou essayez d'optimiser les grandes structures de données (telles que les tableaux) en dehors de votre application.
Dans tous les cas, si votre application PHP utilise 128 Mo de RAM, il y a probablement un problème.
En outre, comme l'a noté Fluffeh dans les commentaires, que faites-vous pour utiliser 500 Mo de RAM?
Essaye ça:
ini_set('memory_limit', '-1');
Cela prendra une utilisation illimitée de la mémoire du serveur.
En plus de l'utilisateur 1427811, vous pouvez surveiller time_limit
et memory_limit
avant et après le téléchargement du fichier:
function custom_put_contents($source_url='',$local_path=''){
$time_limit = ini_get('max_execution_time');
$memory_limit = ini_get('memory_limit');
set_time_limit(0);
ini_set('memory_limit', '-1');
$remote_contents=file_get_contents($source_url);
$response=file_put_contents($local_path, $remote_contents);
set_time_limit($time_limit);
ini_set('memory_limit', $memory_limit);
return $response;
}