0

とにかく、PHP 5.3.10 内で通貨記号を変換する方法はありますか? たとえば£、XML decimal entity referenceに変換します£か?

すべての通貨に「マップ」を使用できましたが、これは 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 に答える