0

无论如何,在 PHP 5.3.10 中,将货币符号转换为£它的 XML 十进制实体引用£

我可以为我的所有货币使用“地图”,但我认为这对于 htmlentities 或类似的东西是可能的。

这是在 XML 文档中使用的。

不幸的是,htmlspecialchars没有做我想要的。请参见下面的示例:

error_log('POUND SIGN');
error_log(htmlspecialchars('£', ENT_QUOTES));

error_log('EURO SIGN');
error_log(htmlspecialchars('€', ENT_QUOTES));

error_log('DOLLAR SIGN');
error_log(htmlspecialchars('$', ENT_QUOTES));

生成:

[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] POUND SIGN
[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] £
[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] EURO SIGN
[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] €
[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] DOLLAR SIGN
[Thu Apr 26 14:06:56 2012] [error] [client 192.168.10.2] $
4

2 回答 2

1

如果要转换符号 html 实体,可以尝试使用该htmlspecialchars()函数。

于 2012-04-26T09:04:05.577 回答
0

我所做的基本上是这样的:

public function getCurrencyXMLDecimalEntity(string $symbol): string 
{
    $map = array(
            '£'   => '£',    // £ - Great British Pounds
            '€'   => '€',   // € - Euro
            '$'         => '$'      // $ - US Dollars
    );

    return $map[$symbol];                
}

但这只是基本的 PHP,毫无疑问,它可以通过多种方式完成。不幸的是,它似乎没有内置的 PHP 函数。

于 2012-04-27T16:47:39.200 回答