アラビア数字を中国語に変換
長い間書いていませんでしたが、最近たまたま財務金額を数値から中国語のコンテンツに変換する関数を作成して記録しました:
class MoneyConstConfig { /** * 金额数字中文映射 */ public static $NUM_CH_MAP = array( 0 => '零', 1 => '壹', 2 => '贰', 3 => '叁', 4 => '肆', 5 => '伍', 6 => '陆', 7 => '柒', 8 => '捌', 9 => '玖', ); /** * 金额层次中文映射 */ public static $FINANCE_UNIT_MAP = array( 0 => '分', 1 => '角', 2 => '圆', 3 => '拾', 4 => '佰', 5 => '仟', 6 => '万', 7 => '拾', 8 => '佰', 9 => '仟', 10 => '亿', 11 => '拾', ); }
<?php class MoneyFinanceCommon { const MAX_FINANCE_LEN = 10; const FINANCE_SYMBOL = '¥'; const YUAN_POINT = '圆'; // 这里也写了配置,本来应该是统一的,但是因为这个文本基本不会变化,所以就这样写啦 const WAN_POINT = '万'; const YI_POINT = '亿'; /** * parseNumToArr 将数字转换位数组 * * @param double $num * @static * @access public * @return void */ public static function parseNumToArr($num) { return str_split($num); } /** * ticketFinanceChDesc 票据金额中文描述 * * @param double $sourceNum * @static * @access public * @return array( * '9' => '', // 仟万 * '8' => '', // 佰万 * '7' => '', // 拾万 * '6' => '', // 万 * '5' => '', // 仟 * '4' => '', // 佰 * '3' => '', // 拾 * '2' => '', // 圆 * '1' => '', // 角 * '0' => '', // 分 * ); */ public static function ticketFinanceChDesc($sourceNum) [67/1580] { $sourceNum = number_format($sourceNum, 2, '.', ''); // 保证金额是精确到分 $numArr = self::parseNumToArr($sourceNum); if (false !== ($key = array_search('.', $numArr))) { unset($numArr[$key]); } $rnumArr = array_reverse($numArr); $data = array(); $i = 0; foreach ($rnumArr as $num) { $data[$i++] = $num; } if ($i < self::MAX_FINANCE_LEN) { $data[] = self::FINANCE_SYMBOL; } $data = array_pad($data, self::MAX_FINANCE_LEN, ''); // 高位用空字符占位 $result = array_reverse($data); return $result; } [43/1580] /** * financeNumToCh * * @param double $sourceNum * @static * @access public * @return string $chAmount */ public static function financeNumToCh($sourceNum) { $sourceNum = number_format($sourceNum, 2, '.', ''); // 保证金额是精确到分 $numArr = self::parseNumToArr($sourceNum); if (false !== ($key = array_search('.', $numArr))) { unset($numArr[$key]); } $amount = array(); $numArrRev = array_reverse($numArr); $i = 0; foreach ($numArrRev as $num) { $amount[$i++] = $num; } $amount = array_reverse($amount, true); // 这里再一次反转目的是保证key 的顺序 $chAmount = self::convertNumArrToChStr($amount); return $chAmount; } /** [15/1580] * convertNumArrToChStr 将数字数组转换位中文数组 * * @param array $numArr 待转换的数字数组 * @static * @access public * @return string $chStr */ public static function convertNumArrToChStr($numArr) { $data = array(); $exists0 = false; // 是否存在0 $chStr = ''; $unitMap = array_flip(MoneyConstConfig::$FINANCE_UNIT_MAP); $yuan = $unitMap[self::YUAN_POINT]; $wan = $unitMap[self::WAN_POINT]; $yi = $unitMap[self::YI_POINT]; foreach ($numArr as $key => $num) { if ($num != 0) { if ($exists0 === true) { $chStr .= '零'; $exists0 = false; } $chStr .= MoneyConstConfig::$NUM_CH_MAP[$num] . MoneyConstConfig::$FINANCE_UNIT_MAP[$key]; } else { $exists0 = true; } if ($key == $yuan) { $chStr = rtrim($chStr, self::YUAN_POINT); $chStr .= self::YUAN_POINT; } elseif ($key == $wan) { $chStr = rtrim($chStr, self::WAN_POINT); $chStr .= self::WAN_POINT; } elseif ($key == $yi) { $chStr = rtrim($chStr, self::YI_POINT); $chStr .= self::YI_POINT; } } return $chStr; } }
以上、アラビア数字の中国語への変換をその側面も含めて紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する

タイトル: Array.Sort 関数を使用して C# で配列を並べ替える例 本文: C# では、配列は一般的に使用されるデータ構造であり、多くの場合、配列を並べ替える必要があります。 C# には Array クラスが用意されており、このクラスには配列を簡単に並べ替えるための Sort メソッドがあります。この記事では、C# で Array.Sort 関数を使用して配列を並べ替える方法を示し、具体的なコード例を示します。まず、Array.Sort 関数の基本的な使用法を理解する必要があります。 Array.So

パート 1: 最初のトラブルシューティング手順 Apple のシステムステータスを確認する: 複雑な解決策を掘り下げる前に、基本から始めましょう。問題はデバイスにあるのではなく、Apple のサーバーがダウンしている可能性があります。 Apple のシステム ステータス ページにアクセスして、AppStore が適切に動作しているかどうかを確認してください。問題があれば、Apple が修正してくれるのを待つしかありません。インターネット接続を確認します。「AppStore に接続できません」問題は接続不良が原因である場合があるため、安定したインターネット接続があることを確認してください。 Wi-Fi とモバイル データを切り替えるか、ネットワーク設定をリセットしてみてください ([一般] > [リセット] > [ネットワーク設定のリセット] > [設定])。 iOS バージョンを更新します。

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

PHP でプログラミングする場合、多くの場合、配列をマージする必要があります。 PHP には、配列のマージを完了するための array_merge() 関数が用意されていますが、配列内に同じキーが存在する場合、この関数は元の値を上書きします。この問題を解決するために、PHP は配列をマージして同じキーの値を保持できる array_merge_recursive() 関数を言語で提供し、プログラム設計をより柔軟にします。配列マージ

PHP には、配列操作をより便利かつ高速にする強力な配列関数が多数あります。 2 つの配列を結合して連想配列にする必要がある場合、PHP の array_combine 関数を使用してこの操作を実行できます。この関数は、実際には、ある配列のキーを別の配列の値として新しい連想配列に結合するために使用されます。次に、PHP の array_combine 関数を使用して 2 つの配列を結合して連想配列にする方法を説明します。 array_comb について学ぶ

Watch4proとgtはそれぞれ特徴や適用シーンが異なりますが、総合的な機能、高性能、スタイリッシュな外観を重視し、価格は高くてもいいという方にはWatch 4 Proの方が適しているかもしれません。高度な機能要件はなく、バッテリー寿命と手頃な価格を重視する場合は、GT シリーズの方が適しているかもしれません。最終的な選択は、個人のニーズ、予算、好みに基づいて決定する必要がありますが、購入する前に自分のニーズを慎重に検討し、さまざまな製品のレビューや比較を参照して、より情報に基づいた選択を行うことをお勧めします。
