Addition de deux variables formatées avec number_format
Fermé
TomLlgDlc
-
20 juil. 2016 à 15:11
pierre.lagoutte Messages postés 35 Date d'inscription mercredi 20 juillet 2016 Statut Membre Dernière intervention 29 septembre 2016 - 20 juil. 2016 à 17:39
pierre.lagoutte Messages postés 35 Date d'inscription mercredi 20 juillet 2016 Statut Membre Dernière intervention 29 septembre 2016 - 20 juil. 2016 à 17:39
A voir également:
- Addition de deux variables formatées avec number_format
- Formule excel addition - Guide
- Deux ecran pc - Guide
- Deux comptes whatsapp - Guide
- Itinéraire google map entre deux adresses - Guide
- Faire deux colonnes sur word - Guide
1 réponse
pierre.lagoutte
Messages postés
35
Date d'inscription
mercredi 20 juillet 2016
Statut
Membre
Dernière intervention
29 septembre 2016
5
Modifié par pierre.lagoutte le 20/07/2016 à 17:44
Modifié par pierre.lagoutte le 20/07/2016 à 17:44
Bonjour,
number_format revoie une chaîne de caractères (string), il est donc normal que vous ne puissiez pas les additionner.
Je peux vous proposer deux solutions : soit vous gardez la variable float d'origine été n'utilisez number_format que pour l'affichage final, soit vous utilisez cette petite fonction (je ne l'ai pas testée) :
Je reste à votre entière disposition si le code ci-dessus ne fonctionne pas ou si vous ne le comprenez pas.
Cordialement
number_format revoie une chaîne de caractères (string), il est donc normal que vous ne puissiez pas les additionner.
Je peux vous proposer deux solutions : soit vous gardez la variable float d'origine été n'utilisez number_format que pour l'affichage final, soit vous utilisez cette petite fonction (je ne l'ai pas testée) :
function add($a, $b) // a et b sont des chaînes de caractères formatées avec number_format() { $arrayA = explode(',', $a); // On sépare la chaîne en deux : la partie entière et décimale $arrayB = explode(',', $b); // On sépare la chaîne en deux : la partie entière et décimale $result = $arrayA[0] + $arrayB[0]; // On additionne les deux partie entières if($arrayA[1] + $arrayB[1] >= 100) // Si la partie décimale est supérieure à 100 { $result += 1; // On ajoute 1 au résultat $result += ($arrayA[1] + $arrayB[1] - 100) / 100; // On ajoute la partie décimale après avoir soustrait 100 } return $result; // On retourne le résultat }
Je reste à votre entière disposition si le code ci-dessus ne fonctionne pas ou si vous ne le comprenez pas.
Cordialement