Heim > Artikel > Backend-Entwicklung > So erhalten Sie die entsprechenden LOCALE-Informationen über das Währungssymbol „CURRENCY“.
Dieses Problem tritt aus folgenden Gründen auf:
Ein internationaler Aufladeservice ist verfügbar. Die Informationen lauten wie folgt:
<code class="shell">MONEY:₱48.00 CURRENCY:PHP</code>
Unter ihnen ist „Geld“ der Aufladebetrag (der Betrag des aktuellen Gebietsschemas) und „Währung“ die dem Geld entsprechende Währungsinformation.
Zur Vereinfachung der statistischen Buchführung möchte ich Geld ₱48.00
in Gleitkommazahleninformationen umwandeln, die mit bloßem Auge erkennbar sind.
Also haben wir die offizielle PHP-Erweiterung intl
verwendet, um den folgenden Code zu entwickeln:
<code class="php">$locale = ? $money = '₱48.00'; $currency = 'PHP'; $fmt = new NumberFormatter($locale, NumberFormatter::CURRENCY); $__ = $fmt->parseCurrency($money, $currency); var_dump($__) //$__ === false为转换失败,若为float 则转换成功</code>
Unerwarteterweise stieß ich auf die Schwierigkeit, die locale
-Informationen nicht erhalten zu können. Ich habe dann intl
in locale
verwendet, um Folgendes zu erhalten:
<code class="php">$locale = Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']); var_dump($locale);</code>
Akzeptanzsprache ist jedoch keine normale Gebietsschemainformation
Gibt es also eine Möglichkeit, currency
locale
durch
Dieses Problem tritt aus folgenden Gründen auf:
Ein internationaler Aufladeservice ist verfügbar. Die Informationen lauten wie folgt:
<code class="shell">MONEY:₱48.00 CURRENCY:PHP</code>
Unter ihnen ist „Geld“ der Aufladebetrag (der Betrag des aktuellen Gebietsschemas) und „Währung“ die dem Geld entsprechende Währungsinformation.
Zur Vereinfachung der statistischen Buchführung möchte ich Geld ₱48.00
in Gleitkommazahleninformationen umwandeln, die mit bloßem Auge erkennbar sind.
Also haben wir die offizielle PHP-Erweiterung intl
verwendet, um den folgenden Code zu entwickeln:
<code class="php">$locale = ? $money = '₱48.00'; $currency = 'PHP'; $fmt = new NumberFormatter($locale, NumberFormatter::CURRENCY); $__ = $fmt->parseCurrency($money, $currency); var_dump($__) //$__ === false为转换失败,若为float 则转换成功</code>
Unerwarteterweise stieß ich auf die Schwierigkeit, die locale
-Informationen nicht erhalten zu können. Ich habe dann intl
in locale
verwendet, um Folgendes zu erhalten:
<code class="php">$locale = Locale::acceptFromHttp($_SERVER['HTTP_ACCEPT_LANGUAGE']); var_dump($locale);</code>
Akzeptanzsprache ist jedoch keine normale Gebietsschemainformation
Gibt es also eine Möglichkeit, currency
locale
durch