Konvertieren von Zahlen mit Komma-Dezimalpunkten in Gleitkommazahlen
In einigen Fällen können Sie auf numerische Daten stoßen, die ein Komma als Dezimalpunkt verwenden ein Punkt als Tausendertrennzeichen. Während gängige Zahlenformatierungsfunktionen dieses Format möglicherweise nicht verarbeiten, gibt es eine einfache und effiziente Lösung:
Verwenden von str_replace() zum Umwandeln der Zahl
Die Funktion str_replace() kann verwendet werden, um Zeichen innerhalb einer Zeichenfolge zu ersetzen. In diesem Fall kann es verwendet werden, um das Komma durch einen Punkt und den Punkt durch eine leere Zeichenfolge zu ersetzen und so die Zahl effektiv in das Standard-Dezimalformat umzuwandeln.
Hier ist ein Schritt-für-Schritt-Beispiel:
// Input string with comma decimal and dot thousand separator $string_number = '1.512.523,55'; // Replace comma with dot $number = str_replace(',', '.', $string_number); // Replace dot with empty string $number = str_replace('.', '', $number); // Convert to float $float_number = floatval($number);
Nach der Ausführung dieser Schritte enthält $float_number den konvertierten Float-Wert der ursprünglichen Zeichenfolge.
Warum str_replace() nicht übertrieben ist
Die Verwendung von str_replace() mag wie ein übertriebener Ansatz erscheinen, ist es aber nicht. Dies ist eine einfache und effiziente Möglichkeit, die Zeichenfolge zu manipulieren und das gewünschte Ergebnis zu erzielen. Alternative Methoden wie benutzerdefiniertes String-Parsing oder reguläre Ausdrücke wären komplexer und könnten möglicherweise zu Leistungsproblemen führen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3