Page 1 sur 1

array_map('floatval', ...

Posté : 28 août 2013, 12:12
par Spols
Bonjour à tous, j'ai essayé un bout de code qui ne fonctionne pas comme je le veux, quelqu'un saurai pourquoi ?
$normal = array("165.00248554894","0.00000000","-55.55555555");
var_dump($normal);
array_map('floatval',$normal);//application d'une transformation vers un float pour tous les nombres récupérés
var_dump($normal);
Résultat:

Code : Tout sélectionner

array(3) { [0]=> string(15) "165.00248554894" [1]=> string(10) "0.00000000" [2]=> string(12) "-55.55555555" } array(3) { [0]=> string(15) "165.00248554894" [1]=> string(10) "0.00000000" [2]=> string(12) "-55.55555555" }
Or j'aurai voulu :

Code : Tout sélectionner

array(3) { [0]=> string(15) "165.00248554894" [1]=> string(10) "0.00000000" [2]=> string(12) "-55.55555555" } array(3) { [0]=> float(165.00248554894) [1]=> float(0.0) [2]=> float(-55.55555555) }

Re: array_map('floatval', ...

Posté : 28 août 2013, 13:22
par xTG
C'est bien bizarre en effet, il semble que la fonction de callback ne soit pas appelée.
As-tu essayé avec une fonction perso ? (pour tester le callback)

La toile ne montre pas de billet avec un problème sur cette utilisation. :|

Edit : ah bien vu la petite coquille sur le retour. :)

Re: array_map('floatval', ...

Posté : 28 août 2013, 13:49
par yann18
bonjour,
c'est plutôt le retour (un array) de la fonction array_map qui est converti en float:

$normal = array("165.00248554894","0.00000000","-55.55555555");
var_dump($normal);
$stringToFloat=array_map('floatval',$normal);//application d'une transformation vers un float pour tous les nombres récupérés
var_dump($stringToFloat);


Re: array_map('floatval', ...

Posté : 28 août 2013, 15:25
par Spols
Mais oui bien sur.

J'ai confondu avec array_walk qui lui agit avec référence.

Merci pour ton aide, j'aurais pu chercher longuement sans trouver