我读到,money_format 在 Windows 和某些 Linux 发行版(即 BSD 4.11 变体)上不可用。但我想使用普通函数(当可用时)编写跨平台库并使用它解决方法如果没有,那么我的库将能够在每个基于 PHP 的 Web 服务器上运行。
是否有任何简单的解决方案来检查内置函数是否可用,如果不包含上面的解决方案?
仅当系统具有 strfmon 功能时才定义函数 Money_format()。例如,Windows 就没有,因此 Windows 中的 Money_format() 是未定义的。
所以你可以使用这个 php 代码:
setlocale(LC_ALL, ''); // Locale will be different on each system.
$amount = 1000000.97;
$locale = localeconv();
echo $locale['currency_symbol'], number_format($amount, 2, $locale['decimal_point'], $locale['thousands_sep']);
这样您就可以编写实际上可移植的代码,而不是依赖操作系统功能。在 PHP 中提供 Money_format 函数而不将其作为扩展是非常愚蠢的。我不明白为什么你会想在编程语言的不同操作系统之间造成这样的不一致
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)