Page 1 of 1

Help Autoload

Posted: 12 Jan 2020, 14:11
by rizou40
Bonjour à tous.
J'en viens au forum car par moi même je ne peux me débrouiller.
Je teste so planning pour un nouveau planning d'équipe.
Pour le moment j'en utilise un en interne sur un serveur Linux avec php5.
J'ai donc monté un nouveau serveur avec Apache2 et php 7.2.
Aucun problème pour installation so planning et la base sql.

Par contre erreur systématique :
Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in /var/www/soplanning/config.inc on line 51
Tout le reste d emon site fonctionne bien sauf le planning.
Je suis allé voir le fichier config.inc la fonction function __autoload.
Mais je dois avoir la tête trop fatiguée et ne trouve pas ma solution.

Une aide charitable pourrait elle me donenr une piste ?

Merci à tous.

Amicalement

Re: Help Autoload

Posted: 13 Jan 2020, 06:45
by soplanning
Bonjour
La fonction autoload est dépréciée dans les dernières versions de PHP.
3 solutions pour vous :
- retirer l'affichage des messages "deprecated" dans votre configuration de PHP (php.ini)
- revenir à une version plus ancienne de php (jusqu'à 7.0)
- attendre la nouvelle version à paraitre bientôt, qui corrige ça

cordialement.

Re: Help Autoload

Posted: 14 Jan 2020, 18:08
by rizou40
Bonsoir.
Je sais bien que cette fonctionnalité est obsolète depuis Php v7.2
Elle a été remplacée par la fonction spl_autoload_register dans PHP 5.1.

J'ai trouvé ma solution :
- Dans config.inc j'ai modifié ainsi :
//function __autoload($nomClasse) {
function mon_autoload($nomClasse) {

Puis appel par
//spl_autoload_register("__autoload");
spl_autoload_register("mon_autoload");

J'ai regarde le fonctionnement de extension spl_autoload_register

Encore merci

Re: Help Autoload

Posted: 15 Jan 2022, 10:20
by faisal25
rizou40 wrote: 14 Jan 2020, 18:08 Bonsoir.
Je sais bien que cette fonctionnalité est obsolète depuis Php v7.2
Elle a été remplacée par la fonction spl_autoload_register dans PHP 5.1.

J'ai trouvé ma solution :
- Dans config.inc j'ai modifié ainsi :
//function __autoload($nomClasse) {
function mon_autoload($nomClasse) {

Puis appel par
//spl_autoload_register("__autoload");
spl_autoload_register("mon_autoload");

J'ai regarde le fonctionnement de extension spl_autoload_register

Encore merci
cela a fonctionné pour moi.