Conversion chiffre en lettre [Résolu]

Signaler
Messages postés
12
Date d'inscription
mercredi 2 juillet 2003
Statut
Membre
Dernière intervention
23 mai 2009
-
tamrimed
Messages postés
1
Date d'inscription
mercredi 8 juillet 2009
Statut
Membre
Dernière intervention
10 décembre 2010
-
Bonsoir a tout le monde, je voudrais savoir si quelqu'un une fonction en PHP qui convertie un chiffre en lettre, merci d'avance.

6 réponses

Messages postés
167
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
8 avril 2007
1
Malheureusement, il n'en existe pas. La seule façon est de le coder toi-même avec un tableau et tu fais la convertion. C'est pas trop compliquer comme algo à faire.

----------------
eXon
Messages postés
10843
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
18
hello,

transformer un chiffre en lettre ... ???
et "

Malheureusement, il n'en existe pas." ???

Je suis tombé dans la 4ème dimension ou quoi, lol ...?

Sous quelle règle un chiffre se transforme en lettre ? Parce que sinon, sans énoncer de règle à suivre, j'en connais des fonctions php qui font ça, moi, hein...
<?php
echo chr ('56');
?>
par exemple...
Messages postés
12
Date d'inscription
mercredi 2 juillet 2003
Statut
Membre
Dernière intervention
23 mai 2009

Merci quand meme.
Messages postés
167
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
8 avril 2007
1
Malalam peut-être que si tu prenais le temps de lire sa question tu comprenderais ce que je dis ... Transformer un chiffre en lettre sa veut dire transformer 341 par trois cents quarante-et-un

----------------
eXon
Messages postés
1
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
19 juin 2010

merci bcq pour le soupap!!
Messages postés
1
Date d'inscription
mercredi 8 juillet 2009
Statut
Membre
Dernière intervention
10 décembre 2010

TAMRI
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
</head>


<?php
function int2str($a){
$joakim = explode('.',$a);
if (isset($joakim[1]) && $joakim[1]!=''){
return int2str($joakim[0]).' virgule '.int2str($joakim[1]) ;
}
if ($a<0) return 'moins '.int2str(-$a);
if ($a<17){
switch ($a){
case 0: return 'zero';
case 1: return 'un';
case 2: return 'deux';
case 3: return 'trois';
case 4: return 'quatre';
case 5: return 'cinq';
case 6: return 'six';
case 7: return 'sept';
case 8: return 'huit';
case 9: return 'neuf';
case 10: return 'dix';
case 11: return 'onze';
case 12: return 'douze';
case 13: return 'treize';
case 14: return 'quatorze';
case 15: return 'quinze';
case 16: return 'seize';
}
} else if ($a<20){
return 'dix-'.int2str($a-10);
} else if ($a<100){
if ($a%10==0){
switch ($a){
case 20: return 'vingt';
case 30: return 'trente';
case 40: return 'quarante';
case 50: return 'cinquante';
case 60: return 'soixante';
case 70: return 'soixante-dix';
case 80: return 'quatre-vingt';
case 90: return 'quatre-vingt-dix';
}
} elseif (substr($a, -1)==1){
if( ((int)($a/10)*10)<70 ){
return int2str((int)($a/10)*10).'-et-un';
} elseif ($a==71) {
return 'soixante-et-onze';
} elseif ($a==81) {
return 'quatre-vingt-un';
} elseif ($a==91) {
return 'quatre-vingt-onze';
}
} elseif ($a<70){
return int2str($a-$a%10).'-'.int2str($a%10);
} elseif ($a<80){
return int2str(60).'-'.int2str($a%20);
} else{
return int2str(80).'-'.int2str($a%20);
}
} else if ($a==100){
return 'cent';
} else if ($a<200){
return int2str(100).' '.int2str($a%100);
} else if ($a<1000){
return int2str((int)($a/100)).' '.int2str(100).' '.int2str($a%100);
} else if ($a==1000){
return 'mille';
} else if ($a<2000){
return int2str(1000).' '.int2str($a%1000).' ';
} else if ($a<1000000){
return int2str((int)($a/1000)).' '.int2str(1000).' '.int2str($a%1000);
}
}
echo int2str("316589.52"); // et voilà ce que ca donne

?>

</html>