如何在 `money_format` 中用 ✪ ("&\#x272A;") 替换 *?
How to replace * with ✪ ("&\#x272A;") in `money_format`?
setlocale(LC_MONETARY, 'en_US');
$str = money_format('%=*#4.4n',163.17852837291);
returns $**163.1785
对于 $str
.
我想改为打印 $✪✪163.1785
。
我该如何解决这个问题?
money_format
can only accept a single byte fill character, so you cannot directly achieve what you want. However you can use str_replace
在 money_format
之后将 *
更改为 ✪
:
setlocale(LC_MONETARY, 'en_US');
$str = money_format('%=*#4.4n',163.17852837291);
$str = str_replace('*', '✪', $str);
echo $str;
输出:
✪163.1785
请注意,只有一个 ✪
,因为您指定的宽度为 4,并且数字中有 3 个数字。
您可以这样定义特定函数:
function m_money_format($f, $s)
{
return str_replace("*", "&\#x272a;", money_format($f,$s));
}
setlocale(LC_MONETARY, 'en_US');
$str = m_money_format($f, $s);
因此您可以在需要时随时调用该函数,在您编写的每一部分代码中
setlocale(LC_MONETARY, 'en_US');
$str = money_format('%=*#4.4n',163.17852837291);
returns $**163.1785
对于 $str
.
我想改为打印 $✪✪163.1785
。
我该如何解决这个问题?
money_format
can only accept a single byte fill character, so you cannot directly achieve what you want. However you can use str_replace
在 money_format
之后将 *
更改为 ✪
:
setlocale(LC_MONETARY, 'en_US');
$str = money_format('%=*#4.4n',163.17852837291);
$str = str_replace('*', '✪', $str);
echo $str;
输出:
✪163.1785
请注意,只有一个 ✪
,因为您指定的宽度为 4,并且数字中有 3 个数字。
您可以这样定义特定函数:
function m_money_format($f, $s)
{
return str_replace("*", "&\#x272a;", money_format($f,$s));
}
setlocale(LC_MONETARY, 'en_US');
$str = m_money_format($f, $s);
因此您可以在需要时随时调用该函数,在您编写的每一部分代码中