Vous n'êtes pas identifié(e).
Pages : 1
Il arrive que la librairie PCLZIP affiche un warning du côté de la ligne 1845. C'est du au fait qu'on multiplie une chaîne par un nombre !!!
Memory_limit donne la quantité de mémoire en K, M ou G ... et il faut supprimer le dernier caractère et transformer en nombre avant de multiplier.
C'est invisible en mode production mais cela peut générer des erreurs plus importantes si la limite mémoire est mal calculée !
Pour corriger çà, ajouter 2 lignes de code dans la routine :
function privOptionDefaultThreshold(&$p_options)
{
$v_result=1;
if (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD])
|| isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) {
return $v_result;
}
// ----- Get 'memory_limit' configuration value
$v_memory_limit = ini_get('memory_limit');
$v_memory_limit = trim($v_memory_limit);
$last = strtolower(substr($v_memory_limit, -1));
///////////////////// 2 lignes ajoutées /////////////////////////////////////////
if (in_array($last,array('g','m','k')))
$v_memory_limit=intval(substr($v_memory_limit,0,strlen($v_memory_limit)-1));
/////////////////////////////////////////////////////////////////////////////////
if($last == 'g')
//$v_memory_limit = $v_memory_limit*1024*1024*1024;
$v_memory_limit = $v_memory_limit*1073741824;
if($last == 'm')
//$v_memory_limit = $v_memory_limit*1024*1024;
$v_memory_limit = $v_memory_limit*1048576;
if($last == 'k')
$v_memory_limit = $v_memory_limit*1024;
$p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] = floor($v_memory_limit*PCLZIP_TEMPORARY_FILE_RATIO);
// ----- Sanity check : No threshold if value lower than 1M
if ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] < 1048576) {
unset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]);
}
// ----- Return
return $v_result;
}
Consultant en sécurité informatique (ISO 27001 Lead Auditor, ISO 27005 Risk Manager)
Amateur de JAZZ, Voile, Bridge
Hors ligne
Bonjour à tous.
Merci à toi d'avoir signaler ce warning
Pour corriger ce warning sous les versions récentes de PHP, le mieux est d'utiliser la dernière version de PCLZIP: https://github.com/chamilo/pclzip/archive/master.zip
a+
Jean-Paul
Hors ligne
Pages : 1