Page 1 sur 1

Settype

Posté : 20 juin 2019, 10:53
par hars
Bonjour à tous,

Je débute en PHP et je ne comprends pas le résultat affiché sur mon code :

Code : Tout sélectionner

<?php $longueur = '20,5 centimètres'; echo $longueur; echo '<br>'; settype($longueur, "float"); echo $longueur; ?>

1) ma variable $longueur est de type string => OK pour moi.
2) Je convertie ma variable string en float (chiffre avec décimale)

Si je convertie ma variable en integer, le résultat me paraitrait logique (20) mais alors pourquoi quand je la convertie en chiffre avec décimale (float), la décimale disparait ?

Merci d'avance pour votre éclairage :D

Re: Settype

Posté : 20 juin 2019, 11:22
par Spols
le transtypage est hasardeux il vaut mieux gèrer toi même le parsage de tes string.

peut être que la configuration du serveur est avec un point plutot qu'une virgule comme séparateur de décimale.

Re: Settype

Posté : 20 juin 2019, 11:27
par hars
Merci pour votre réponse, il s'agit bien de cela.

C'est une bonne leçon pour l'avenir :D

Merci encore...

Re: Settype

Posté : 20 juin 2019, 11:28
par Spols
non plutot de configuration locale

Re: [RESOLU] Settype

Posté : 20 juin 2019, 13:23
par @rthur
Surtout avec le mot "centimètres" écrit dans ta variable, c'est très ambitieux d'espérer que PHP fasse un transtypage correcte. :-D