• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    php把數字錢數轉為中文錢數

    在做法式的時辰,我們會碰到要把數字的錢數轉為中文的年夜寫錢數

    東西/原料

    • php
    • sublime

    方式/步調

    1. 1

      function cny($money) {

          $cnums=array("零","壹","貳","叁","肆","伍","陸","柒","捌","玖");

          $cnyunits=array("圓","角","分");

          $grees=array("拾","佰","仟","萬","拾","佰","仟","億");

          if(strpos($money,'.') !== false){ //拆分整數小數 別離賦值給變量

               list($int,$dec)=explode(".",$money,2);

          }else{

              list($int,$dec)=[$money,0];

          }

          $dec=array_filter(array($dec[1],$dec[0])); //過濾分數

          $ret=array_merge($dec,array(implode("",cny_to_unit(str_split($int),$grees)),"")); //先處置單元

          $ret=implode("",array_reverse(cny_to_unit($ret,$cnyunits)));

          return str_replace(array_keys($cnums),$cnums,$ret);

      }

    2. 2

      function cny_to_unit($list,$units) {

          $ul=count($units);

          $xs=array();

          foreach (array_reverse($list) as $x) { /反轉數組便于處置

              $l=count($xs);

              if ($x!="0" || !($l%4)) {

                  if ($l != 0) {

                      $n=($x=='0'?'':$x).($units[($l-1)%$ul]);

                  }else{

                      $n=($x=='0'?'':$x);

                  }

              }

              else {

                  $n=is_numeric($xs[0][0])?$x:'';

              }

              array_unshift($xs,$n);

          }

          return $xs;

      }

    3. 3

      挪用函數

      echo cny('120');

    4. 4

      挪用函數

      echo cny('120.18');

    5. 5

      小編在網站上找到良多的栗子,感覺這個是代碼起碼的,可是我在用的過程中,會報數組溢出等錯誤,所以此刻是小編革新過的代碼。大師可以矯捷運用

    注重事項

    • 數組溢出
    • 發表于 2018-08-30 00:00
    • 閱讀 ( 744 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆