Page 1 sur 1

Warning: A non-numeric value encountered

Posté : 08 nov. 2018, 11:50
par marih
Bonjour à tous,

Après une évolution de PHP 7.0 à PHP 7.2, j'ai rencontré le pb suivant:
Warning: A non-numeric value encountered in toto.php on line 903.
cela concerne l'instruction:
$NbreAnnees = date("Y")- $AnneeCreation;
en l'écrivant :
$NbreAnnees = date('Y')- $AnneeCreation;
c'est pareil.
Initialement j'avais codé:
$NbreAnnees = date(Y)- $AnneeCreation;
qui n'est plus supportée.

Avez-vous une idée ?
merci de votre aide

Re: Warning: A non-numeric value encountered

Posté : 09 nov. 2018, 13:18
par Saian
Salut, as-tu vérifié le contenu de $AnneeCreation qui à priori, étant donné le message d'erreur, ne doit pas être une valeur numérique ?

Re: Warning: A non-numeric value encountered

Posté : 09 nov. 2018, 14:17
par marih
Bonjour Saian,
$DateCreation = $row[0]; est lu date une base de données,
ensuite
$AnneeCreation = substr($DateCreation, 0, 4); // ex 2005
$NbreAnnees = date("Y")- $AnneeCreation;
il est possible que la date de création soit nulle.
plus j'ai d'autres variables du même genre qui ne sortent pas en erreur...
Merci de ton aide

Re: Warning: A non-numeric value encountered

Posté : 09 nov. 2018, 14:36
par Saian
Et bien il est probable que lors de l'erreur la date soit nulle. Écris le code pour gérer ce cas afin que ça ne provoque plus d'erreur.

Re: Warning: A non-numeric value encountered

Posté : 14 nov. 2018, 10:20
par marih
Bonjour, Saian,
en effet dans la Base de données il y avait quelques valeurs nulles. J'ai corrigé et ça marche.
Merci de ton aide.