Le nombre 08 et 09 en php.. Mystere.

Résolu/Fermé
123pierre Messages postés 48 Date d'inscription vendredi 13 mars 2009 Statut Membre Dernière intervention 28 janvier 2011 - 23 avril 2009 à 08:32
puxor Messages postés 318 Date d'inscription mardi 2 septembre 2008 Statut Membre Dernière intervention 4 mai 2009 - 23 avril 2009 à 09:17
Bonjour,

J'ai passe une demi journée a trouver d'ou venait l'erreur sur mon programme.
Je l'ai resolu mais quand meme ca me turlupine.

Soit les lignes de code tres simples:

<?php
echo 01;
echo 02;
echo 03;
echo 04;
echo 05;
echo 06;
echo 07;
echo 08;
echo 09;
echo 10;
echo 11;
echo 12;
?>


Pourquoi diantre le 08 et le 09 ne marchent pas???
Ils renvoient 0. (en tout cas sur mon pc et sur mon site en ligne)

Etrange!

3 réponses

Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100
23 avril 2009 à 08:41
Salut,

PHP considère un nombre commencant par 0 comme un nombre exprimé en octal.
(voir la doc https://www.php.net/manual/fr/language.types.integer.php
Or 08 et 09 sont incohérents en octal.

Petit test pour s'en convaincre:
 echo 010; // affiche 8; 
2
123pierre Messages postés 48 Date d'inscription vendredi 13 mars 2009 Statut Membre Dernière intervention 28 janvier 2011 2
23 avril 2009 à 08:44
Purée, merci!
Ca c'est rapide comme reponse. et precis. Bien joué

Pierre..
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100
23 avril 2009 à 08:56
De rien, c'était une question très pertinente digne d'une certification :-)
0
puxor Messages postés 318 Date d'inscription mardi 2 septembre 2008 Statut Membre Dernière intervention 4 mai 2009 89
23 avril 2009 à 09:17
on en apprend tous les jours, merci pour ta réponse =)
0