Maison développement back-end tutoriel php php实现将人民币金额转大写的方法类

php实现将人民币金额转大写的方法类

Jun 20, 2016 pm 01:03 PM
data self ZERO

工作中偶尔会碰到需要将人民币金额,也即阿拉伯数字转化为大写汉字的这种情况,下面是作者经过实践总结出来的方法,特此记录以防备忘。

<p>class Num2Cny{</p>  static $basical=array(0=>'零','壹','贰','叁','肆','伍','陆','柒','捌','玖');<br />  static $advanced=array(1=>'拾','佰','仟');<br />  public static function ParseNumber($number){<br />    $number=trim($number);<br />    if(!is_numeric($number)||intval($number)>999999999999) return 'error';<br />    if($number==0) return '零';<br />    if(strpos($number,'.')){<br />      $number=round($number,2);<br />      $data=explode('.',$number);<br />      $data[0]=self::int($data[0]);<br />      $data[1]=self::dec($data[1]);<br />      return $data[0].$data[1];<br />    }else{<br />      return self::int($number).'整';<br />    }<br />  }<br />  public static function int($number){<br />    $arr=array_reverse(str_split($number));<br />    $data='';<br />    $zero=false;<br />    $zero_num=0;<br />    foreach($arr as $k=>$v){<br />      $_chinese='';<br />      $zero=($v==0)?true:false;<br />      $x=$k%4;<br />      if($x && $zero && $zero_num>1)continue;<br />      switch($x){<br />        case 0:<br />          if($zero){<br />            $zero_num=0;<br />          }else{<br />            $_chinese=self::$basical[$v];<br />            $zero_num=1;<br />          }<br />          if($k==8){<br />            $_chinese.='亿';<br />          }elseif($k==4){<br />            $_chinese.='万';<br />          }<br />          break;  <br />        default:<br />          if($zero){<br />            if($zero_num==1){<br />              $_chinese=self::$basical[$v];<br />              $zero_num++;<br />            }<br />          }else{<br />            $_chinese=self::$basical[$v];<br />            $_chinese.=self::$advanced[$x];<br />          }<br />      }<br />      $data=$_chinese.$data;<br />    }<br />    return $data.'元';<br />  }<br />  public static function dec($number){<br />    if(strlen($number)<2) $number.='0';<br />    $arr=array_reverse(str_split($number));<br />    $data='';<br />    $zero_num=false;<br />    foreach($arr as $k=>$v){<br />      $zero=($v==0)?true:false;<br />      $_chinese='';<br />      if($k==0){<br />        if(!$zero){<br />          $_chinese=self::$basical[$v];<br />          $_chinese.='分';<br />          $zero_num=true;<br />        }<br />      }else{<br />        if($zero){<br />          if($zero_num){<br />            $_chinese=self::$basical[$v];<br />          }<br />        }else{<br />          $_chinese=self::$basical[$v];<br />          $_chinese.='角';<br />        }<br />      }<br />      $data=$_chinese.$data;<br />    }<br />    return $data;<br />  }<br /><p>}
Copier après la connexion

使用过程也很简单,如下:

echo Num2Cny::ParseNumber(1234567.5);//www.scutephp.com

结果将输出:

壹佰贰拾叁万肆仟伍佰陆拾柒元伍角

相关:JS数字金额转大写金额方法


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Pourquoi NameResolutionError(self.host, self, e) de e et comment le résoudre Pourquoi NameResolutionError(self.host, self, e) de e et comment le résoudre Mar 01, 2024 pm 01:20 PM

La raison de l'erreur est NameResolutionError(self.host,self,e)frome, qui est un type d'exception dans la bibliothèque urllib3. La raison de cette erreur est que la résolution DNS a échoué, c'est-à-dire le nom d'hôte ou l'adresse IP qui était. La tentative de résolution n'a pas pu être trouvée. Cela peut être dû au fait que l'adresse URL saisie est incorrecte ou que le serveur DNS est temporairement indisponible. Comment résoudre cette erreur Il peut y avoir plusieurs façons de résoudre cette erreur : Vérifiez si l'adresse URL saisie est correcte et assurez-vous qu'elle est accessible Assurez-vous que le serveur DNS est disponible, vous pouvez essayer d'utiliser la commande "ping" dans la ligne de commande pour tester si le serveur DNS est disponible Essayez d'accéder au site Web en utilisant l'adresse IP au lieu du nom d'hôte si vous êtes derrière un proxy

Comment s'utiliser soi-même en Python Comment s'utiliser soi-même en Python May 17, 2023 pm 10:40 PM

Avant d'introduire l'utilisation de self en Python, introduisons d'abord les classes et les instances en Python. Nous savons que les concepts les plus importants de l'orientation objet sont les classes et les instances. Les classes sont des modèles abstraits, comme les étudiants. représenté par une classe d’étudiants. Les instances sont des « objets » spécifiques créés à partir de classes. Chaque objet hérite des mêmes méthodes de la classe, mais ses données peuvent être différentes. 1. Prenons l'exemple de la classe Student. En Python, la classe est définie comme suit : classStudent(object):pass(Object) indique de quelle classe la classe hérite.

Quelles données se trouvent dans le dossier de données ? Quelles données se trouvent dans le dossier de données ? May 05, 2023 pm 04:30 PM

Le dossier de données contient des données du système et du programme, telles que les paramètres logiciels et les packages d'installation. Chaque dossier du dossier Données représente un type différent de dossier de stockage de données, que le fichier de données fasse référence au nom de fichier Données ou à l'extension Données nommées. , ce sont tous des fichiers de données personnalisés par le système ou le programme. Les données sont un fichier de sauvegarde pour le stockage des données. Généralement, elles peuvent être ouvertes avec meidaplayer, le bloc-notes ou Word.

Que faire si les données de chargement MySQL sont tronquées ? Que faire si les données de chargement MySQL sont tronquées ? Feb 16, 2023 am 10:37 AM

Solution aux données de chargement MySQL tronquées : 1. Recherchez l'instruction SQL avec des caractères tronqués ; 2. Modifiez l'instruction en "LOAD DATA LOCAL INFILE "employee.txt" INTO TABLE EMPLOYEE jeu de caractères utf8 ;".

Quelles sont les différences entre xdata et data Quelles sont les différences entre xdata et data Dec 11, 2023 am 11:30 AM

Les différences sont les suivantes : 1. xdata fait généralement référence à des variables indépendantes, tandis que data fait référence à l'ensemble des données ; 2. xdata est principalement utilisé pour créer des modèles d'analyse de données, tandis que data est utilisé pour l'analyse de données et les statistiques ; pour l'analyse de régression, l'analyse de variance, la modélisation prédictive, les données peuvent être analysées à l'aide de diverses méthodes statistiques ; 4. xdata nécessite généralement un prétraitement des données et les données peuvent contenir des données originales complètes ;

Plus de retours que de ventes : le Humane Ai Pin devient un désastre commercial Plus de retours que de ventes : le Humane Ai Pin devient un désastre commercial Aug 08, 2024 pm 01:14 PM

Peu de temps après le lancement du Humane Ai Pin, des critiques cinglantes ont révélé que le gadget IA était tout sauf prêt pour le marché, car la plupart des fonctionnalités initialement annoncées ne fonctionnaient pas correctement ou manquaient tout simplement, la durée de vie de la batterie était

Les taux d'échec des projets d'IA dépassent 80 % – une étude cite une mauvaise reconnaissance des problèmes et une concentration sur les dernières tendances technologiques parmi les problèmes majeurs Les taux d'échec des projets d'IA dépassent 80 % – une étude cite une mauvaise reconnaissance des problèmes et une concentration sur les dernières tendances technologiques parmi les problèmes majeurs Aug 31, 2024 am 12:59 AM

Tout le monde et leur tante semblent monter à bord du train de l'IA à la recherche de marges bénéficiaires gonflées et de battage publicitaire - il suffit de regarder le récent changement de marque Ryzen d'AMD comme un excellent exemple de ce battage médiatique de l'IA. Une étude récente menée par RAND a révélé que cela

Les données du composant vue ne peuvent-elles pas être une fonction ? Les données du composant vue ne peuvent-elles pas être une fonction ? Dec 19, 2022 pm 05:22 PM

Non, les données du composant vue doivent être une fonction. Les composants de Vue sont utilisés pour la réutilisation Afin d'empêcher la réutilisation des données, ils sont définis comme des fonctions. Les données du composant vue doivent être isolées les unes des autres et ne pas s'influencer les unes les autres. Chaque fois que le composant est réutilisé, les données doivent être copiées une fois. Plus tard, lorsque les données du composant sont modifiées dans un endroit réutilisé, les autres données seront copiées. Si les données des composants locaux réutilisés ne sont pas affectées, vous devez renvoyer un objet comme état du composant via la fonction de données.

See all articles