Je reçois ce message lorsque j'essaie de lancer un script php que je dois utiliser mais que je n'ai pas écrit.
Deprecated: Function set_magic_quotes_runtime() is deprecated in /opt/lampp/htdocs/webEchange/SiteWeb_V5/inc/fpdf.php on line 1810
Voici la ligne 1810:
set_magic_quotes_runtime(0);
S'il s'agit d'une fonction obsolète, que puis-je la remplacer?
Merci beaucoup!
Vérifiez si c'est le premier. Cela devrait éliminer l’avertissement et garantir que, si votre code est exécuté sur des versions plus anciennes de PHP, les guillemets magiques sont bien désactivés.
Ne supprimez pas simplement cette ligne de code comme suggéré par d'autres, à moins que vous ne puissiez être sûr à 100% que le code ne sera jamais exécuté sur quoi que ce soit avant PHP 5.3.
<?php
// Check if magic_quotes_runtime is active
if(get_magic_quotes_runtime())
{
// Deactivate
set_magic_quotes_runtime(false);
}
?>
get_magic_quotes_runtime
n'est PAS obsolète en PHP 5.3.
Source: http://us2.php.net/get_magic_quotes_runtime/
J'utilisais FPDF v. 1.53 et je ne voulais pas mettre à niveau en raison d'effets secondaires possibles. J'ai utilisé le code suivant selon Yacoby:
Ligne 1164:
if (version_compare(PHP_VERSION, '5.3.0', '<')) {
$mqr=get_magic_quotes_runtime();
set_magic_quotes_runtime(0);
}
Ligne 1203:
if (version_compare(PHP_VERSION, '5.3.0', '<')) {
set_magic_quotes_runtime($mqr);
}
Comme Magic Quotes est maintenant désactivé par défaut (et dont la suppression est planifiée), vous pouvez simplement supprimer cet appel de fonction de votre code.
ini_set('magic_quotes_runtime', 0)
Je suppose.
Mise à niveau vers la version 1.6 de FPDF.
Vous n'avez pas besoin de le remplacer par quelque chose. Le paramètre magic_quotes_runtime
est supprimé dans PHP6 , donc l'appel de la fonction n'est pas nécessaire. Si vous souhaitez conserver la compatibilité avec les versions antérieures, il peut être judicieux de l'envelopper dans une instruction if vérifiant phpversion using version_compare
Gust ajouter le préfixe "@" devant la fonction pour être @set_magic_quotes_runtime (0); Plus pris en charge dans PHP 5.4, et ne pas supprimer ou désactiver la fonction
ajoutez ce code en haut de votre script pour résoudre le problème
@set_magic_quotes_runtime(false);
ini_set('magic_quotes_runtime', 0);
Mettre à jour cette fonction:
if (version_compare(PHP_VERSION, '5.3.0', '<')) {
set_magic_quotes_runtime(0);
}
else {
ini_set('magic_quotes_runtime', 0);
}
$magic_quotes = get_magic_quotes_runtime();
$file_buffer = fread($fd, filesize($path));
$file_buffer = $this->EncodeString($file_buffer, $encoding);
fclose($fd);
if ($magic_quotes) {
if (version_compare(PHP_VERSION, '5.3.0', '<')) {
set_magic_quotes_runtime($magic_quotes);
}
else {
ini_set('magic_quotes_runtime', $magic_quotes);
}
}
return $file_buffer;
Dans PHP 7, nous pouvons utiliser:
ini_set('magic_quotes_runtime', 0);
au lieu de set_magic_quotes_runtime(0);