首頁 > 後端開發 > php教程 > 解析PHP中的money_format ()函數

解析PHP中的money_format ()函數

autoload
發布: 2023-04-09 22:32:01
原創
5405 人瀏覽過

    php中,我們常常需要將數字格式化成貨幣字串,這時就需要使用php的內建函數money_format()函數,本文就帶大家一起來看看這個函數。首先我們來看看這個函數的語法:

money_format ( string $format , float $number )
登入後複製
  • $format:規定要格式化的字串及如何格式化字串中的變數。單一 % 字元可選的標記(flags)可選的字段寬度可選的,左側精度可選的,右側精度必選的,單個轉換字元。

  • $number:需要格式化的數字。

  • 傳回值:傳回格式化後的字元。格式字串前後的字元將原封不動回傳。  傳入的 number 如果不是數字,將回傳  null 並且產生     E_WARNING。

    注意:money_format()函數此函數包裝了 C 函數庫中的 strfmon(),只被定義在執行函數系統具有strfmon功能的時候才可使用,而Windows系統沒有,所有money_format()Windows中未定義,導致提示未定義錯誤。或是你所使用的php版本低於4.3

1.正數的使用

<?php
$number = 1234.56;
// 打印 en_US locale 的国际化格式
setlocale(LC_MONETARY, &#39;en_US&#39;);
echo money_format(&#39;%i&#39;, $number) . "\n";
// USD 1,234.56

// 打印意大利国家的格式,带两位浮点小数`
setlocale(LC_MONETARY, &#39;it_IT&#39;);
echo money_format(&#39;%.2n&#39;, $number) . "\n";
// Eu 1.234,56
?>
登入後複製

2.負數的使用

<?php
$number = -1234.5672;
// 美国国家的格式,使用圆括号 () 标记负数。
// 左侧精度使用十位
setlocale(LC_MONETARY, &#39;en_US&#39;);
echo money_format(&#39;%(#10n&#39;, $number) . "\n";
// ($        1,234.57)

// 相似的格式,添加了右侧两位小数点的精度,同时用 * 来填充
echo money_format(&#39;%=*(#10.2n&#39;, $number) . "\n";
// ($********1,234.57)
登入後複製

3.格式字串前後,加入一些簡介

<?php
setlocale(LC_MONETARY, &#39;en_GB&#39;);
$fmt = &#39;The final value is %i (after a 10%% discount)&#39;;
echo money_format($fmt, 1234.56) . "\n";
// The final value is  GBP 1,234.56 (after a 10% discount)
登入後複製

推薦:2021年PHP面試題大匯總(收藏)》《php影片教學

以上是解析PHP中的money_format ()函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板