Wie mache ich das NumberFormatter-Format zu einer Prozentzahl, ohne sie "neu zu interpretieren"?

Benutzer12760574

Beispielcode:

$fmt = new NumberFormatter('sv_SE', NumberFormatter::PERCENT);
var_dump($fmt->format(99.99));

Erwartete Ausgabe:

string(9) "99,99 %"

Tatsächliche Leistung:

string(9) "9 999 %"

Analyse:

Ich muss "etwas vermissen". Ich habe bereits die Prozentzahl (neunundneunzig Komma neunundneunzig) und möchte sie nur für die angegebene Sprache + Gebietsschema-Kombination entsprechend ausgeben. In den USA ist es zum Beispiel "99,99%" mit einem Punkt für das Dezimalzeichen und ohne Leerzeichen zwischen der Prozentzahl und dem Prozentzeichen, und in Schweden ist es "99,99%" mit einem Komma für das Dezimalzeichen und ein Zwischenraum. Es gibt wahrscheinlich zahlreiche andere Regeln in anderen Gebietsschemas / Sprachen, die mir nur noch nicht begegnet sind.

Ich möchte nicht, dass PHP die Nummer, die ich füttere, in irgendeiner Weise "weiterverarbeitet". Es ist schon getan". Keine weitere Verarbeitung erforderlich.

Ich verstehe ehrlich gesagt nicht einmal, warum PHP es in "9999" umwandelt, wenn es eindeutig als Float als 99,99 angegeben ist ...

Gibt es eine versteckte Option, um diese "Weiterverarbeitung" der Nummer auszuschalten?

Jordan Daigle

NumberFormatter geht davon aus, dass die Zahl in Ihrem Fall zwischen 0 und 1 liegt 99,99/100 === 0,9999, daher können Sie es so verwenden:

$fmt = new NumberFormatter('sv_SE', NumberFormatter::PERCENT);
var_dump($fmt->format(99.99/100));

Nach dem Lesen der Dokumentation bezweifle ich stark, dass es einen anderen Weg gibt.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Wie mache ich eine vertikale und horizontale Mitte, ohne das Bild mit CSS zu strecken?

Wie mache ich Strings zu einer Liste?

Wie mache ich Restriktionen zu einer Variablen

Wie mache ich "\\" in Python zu einer Zeichenfolge?

Wie mache ich das Java-Format zu einem Double wie -3.2 anstatt -3.1999999999999953?

Django CreateView - Wenn das Feld leer ist, erstellen Sie kein Objekt und leiten Sie stattdessen zu einer anderen Ansicht um. Wie mache ich das?

Wie mache ich Variablen zugänglich für andere Skripte, ohne sie im Inspektor zu überschreiben?

Wie kopiere ich Inhalte in einer DOCX-Datei mit POI in eine andere DOCX-Datei, ohne das Format zu verlieren?

Wie geben Sie eine Datetime-Variable aus einer for-Schleife aus, ohne das Format zu ändern?

Hinzufügen einer Zuordnung zu einem Typ aus Java - wie mache ich das?

Wie bekomme ich den Jahresbeginn und/oder das Jahresende einer Carbon-Instanz, ohne sie dabei zu ändern?

Wie mache ich diesen Algorithmus fauler, ohne mich zu wiederholen?

Wie mache ich eine Abfrage zu verschiedenen Sammlungen (ohne Beziehungen)?

Wie mache ich das?

Wie extrahiere ich eine bestimmte Zeile und mache sie zu einer Spalte in R?

Wie trenne ich alle Formeln und mache sie zu einer Unterklasse?

Ist es sicher ,_cast als kleineres Array neu zu interpretieren? Gibt es eine bessere Option?

Ist es nie wirklich sicher, Eingaben in std :: unique_ptr neu zu interpretieren?

Was ist der richtige Weg, um eine Entität in Swift neu zu interpretieren?

Ist es sicher ,_cast zwischen einem Typ und einem Wrapper <Typ> neu zu interpretieren?

Wie mache ich eine Unterklasse einer Klassenvorlage zu einer Klassenvorlage?

Wie mache ich eine Python-Klasse unter ihrem enthaltenen Paket verfügbar, ohne das gesamte Paket zu importieren?

Wie verwende ich insert () in einer for-Schleife, ohne sie zu einer Endlosschleife zu machen?

Wie mache ich einen Screenshot einer YouTube-Seite, ohne den Browser in Python oder R zu öffnen?

Wie mache ich das Umbenennen und Verschieben einer Datei zu einer Schleife unter Berücksichtigung der üblichen Namenskonvention?

Wie kann ich in einer Kopie einer verknüpften Liste vorrücken, ohne das Original zu ändern?

Wie mache ich das Äquivalent zu TaskCompletionSource <nothing>?

Wie extrahiere ich die mittleren Zeichen aus einer Zeichenfolge ohne einen bestimmten Index, um sie zu starten und zu beenden, bevor das Leerzeichen gelesen wird?

Wie mache ich das Rückgabeobjekt einer Methode generisch?

TOP Liste

  1. 1

    So legen Sie mit dem Interface Builder unterschiedliche führende Speicherplätze für unterschiedliche Geräte fest

  2. 2

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  3. 3

    Wie kann ich in SCSS mehrere Klassen zu einer einzigen kombinieren?

  4. 4

    Eclipse Oxygen - Projekte verschwinden

  5. 5

    Wie konvertiert man einen Datenrahmen im langen Format in eine Liste mit einem geeigneten Format?

  6. 6

    Wie kann ich den Kaskadenmodus global einstellen?

  7. 7

    Wie erstelle ich einen neuen übergeordneten Knoten außerhalb der .ref (/ path) in der Firebase-Echtzeitdatenbank mithilfe von Cloud-Funktionen (Typescript)?

  8. 8

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  9. 9

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  10. 10

    Speichern Sie ein MPAndroidChart-Diagramm in einem Bild, ohne es in einer Aktivität anzuzeigen

  11. 11

    Gruppieren Sie Datenrahmenspalten nach ihrem Datum (die Spaltentitel enthalten) und fassen Sie die Instanzen von Einsen und Nullen in R . zusammen

  12. 12

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

  13. 13

    Tic Tac Toe-Spiel im React-Reset-Button funktioniert nicht

  14. 14

    Tomcat - Leiten Sie den alten Kontextstamm zum neuen Kontextstamm um

  15. 15

    Wie wählt man Unterschiede mit drei Tabellen aus?

  16. 16

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

  17. 17

    Wie kann ich meine Tabelle abfragen, um sie in mySQL nach 2 Feldern zu gruppieren?

  18. 18

    So berechnen Sie die Verfügbarkeit von Anwendungen (SLA)

  19. 19

    Fügen Sie eine weitere Schaltfläche zu gwt Suggest Box hinzu

  20. 20

    Modbus Python Schneider PM5300

  21. 21

    Wie kann eine gleichmäßige Lastverteilung in ElasticSearch mit Indizes mit unterschiedlicher Anzahl von Shards erreicht werden?

heißlabel

Archiv