Maison >développement back-end >Problème PHP >Comment convertir des nombres majuscules en chiffres arabes en php
Comment convertir des nombres majuscules en chiffres arabes en php : [function Chinese2number($chNum) { $numArr = array('zéro' => '0', 'un' => '1', 'deux' => '2', 'trois' => ...】.
L'environnement d'exploitation de cet article : système Windows 10, PHP 7, ordinateur ThinkPad t480.
En raison des besoins professionnels, nous devrons peut-être convertir les nombres majuscules en chiffres arabes correspondants. Peut-être que de nombreux amis n'ont pas étudié ce problème, donc pour. un moment. Je ne sais pas comment l'écrire. Voyons comment convertir les nombres majuscules en chiffres arabes correspondants
Implémentation du code :
function chinese2number($chNum) { $numArr = array( '零' => '0', '一' => '1', '二' => '2', '三' => '3', '四' => '4', '五' => '5', '六' => '6', '七' => '7', '八' => '8', '九' => '9', ); $numUnit = array( '十' =>'10', '百' =>'100', '千' =>'1000', '万' =>'10000', '亿' =>'100000000', ); $number = 0; for ($i = 0;$i<=mb_strlen($chNum); $i++) { $str = mb_substr($chNum,$i,2); $first = mb_substr($str,0,1); $second = mb_substr($str,1,1); if (isset($numUnit[$first])){ if (!$number) { $number = 1; } $number *= $numUnit[$first]; } else if (isset($numArr[$first])) { $i++; if (isset($numArr[$second])) { if ($numArr[$first] == 0) { $i--; }else{ $number += intval($numArr[$first].$numArr[$second]); } } else if(isset($numUnit[$second])) { $number += intval($numArr[$first]*$numUnit[$second]); } else{ $number += intval($numArr[$first]); } } } return $number; }
Apprentissage recommandé : Formation php
.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!