當前位置: 首頁> 最新文章列表> PHP 7及更高版本中money_format函數不再支持,該如何替代或解決?

PHP 7及更高版本中money_format函數不再支持,該如何替代或解決?

gitbox 2025-09-12
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 這部分代碼與文章內容無關,僅作為示例頭部代碼</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"當前時間:"</span></span><span> . </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'Y-m-d H:i:s'</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>

<hr>

<h2>PHP </span><span><span class="hljs-number">7</span></span><span>及更高版本中money_format函數不再支持,該如何替代或解決?</h2>

<p>在PHP </span><span><span class="hljs-number">7.4</span></span><span>及以後版本中,<code></span><span><span class="hljs-title function_ invoke__">money_format</span></span><span>()

在這個例子中, NumberFormatter不僅格式化了數字,還根據語言環境自動添加了貨幣符號、千分位和小數點等。開發者只需指定合適的語言環境和貨幣代碼即可。

三、使用NumberFormatter的優點

  • 跨平台:不依賴操作系統的locale配置,保證一致的格式輸出。
  • 支持多語言多貨幣:輕鬆支持多種國家和貨幣格式,適合國際化項目。
  • 功能豐富:可控制小數位數、符號位置等,靈活性強。

四、注意事項

使用NumberFormatter前,請確認PHP環境已啟用intl擴展,否則會報錯。大部分現代PHP環境默認已包含該擴展,但部分輕量環境需要手動安裝配置。

五、總結

隨著PHP的發展, money_format()已被淘汰,不應再使用。 NumberFormatter是官方推薦的替代方案,能夠提供更穩定和跨平台的貨幣格式化功能。建議所有新項目及維護中的項目盡快遷移到NumberFormatter ,以保證代碼的現代性和兼容性。