2016-05-04 8 views
0

質問は実際にはとても簡単です。私は私のページに通貨を表示する次のコードを持っています。 $this->Number->currency($HdViewBestellingen->INKBLPRIJS, 'EUR')これは以下のようにcurrenyをプリントアウト:CakePHP(3.0)で通貨記号の後にスペースを追加するには?

€0.12

しかし、私は通貨のようにプリントアウトしたい:

€0.12

(スペースに注意してくださいユーロ記号と数字の間)。

私の質問は、CakePHP番号フォーマッタを使ってこれをどのように達成するのですか?

http://book.cakephp.org/3.0/en/core-libraries/number.html#formatting-currency-valuesを読んだ後。 私は、$this->Number->currency($HdViewBestellingen->INKBLPRIJS, 'EUR', ['pattern' => '#, ####.##'])のように渡すことができるオプション配列を使いこなしていますが、動作させることができませんでした。

+0

実際に私はユーロ記号と通貨との間にスペースがあります。あなたのロケールはどのように設定されていますか? – arilia

+0

en_USに設定されていると思います(これはini_set( 'intl.default_locale'、 'en_US'); bootstrap.phpにあります) – Slimpie75

答えて

1

使用しているロケールによって異なります。ロケールは、シンボルの位置も制御します。

en_USを使用すると、シンボルと数値の間にスペースはありません。

ヨーロッパのロケールを使用することをお勧めします。あなたはbootstrap.phpの中にアプリケーションレベルでそれを変更したくない場合は、ちょうどあなたがドイツ語のロケールを使用する場合は、ユーロ記号が数字の後に来るので、私はイタリア語のロケールを使用しそう

$this->Number->currency($HdViewBestellingen->INKBLPRIJS,'EUR', ['locale' => 'it_IT']) 

のような1つの出現のためにそれを設定することができます

+0

あなたが推奨するロケール(it_IT)を使用する場合、ユーロ記号はこれは私が望むものではありません。しかし、あなたがロケールnl_NLを使用しているかどうかを知りたければ、それは私が望むように価格を設定します(つまり、スペースは0.12ユーロです)。 – Slimpie75

+0

奇妙な。 it_ITは私のサーバーのトリックです。 – arilia

関連する問題