Ich muss einige Produkte bestellen, die von Benutzern basierend auf ihrem Preis registriert sind.Konvertieren Sie Zeichenfolge in Nummer, achten Sie auf Punkte und Kommas für die Bestellung
Ich benutze WordPress und wenn der Benutzer ein Produkt anzeigt, bekomme ich das Feld über Eingabe = Text, dann wandle es mit einer Funktion um.
Leider ist das Feld, das die konvertierte Zahl erhält, auch ein Textfeld und ich kann das nicht ändern.
Also habe ich die gleiche Funktion verwendet, um die Zahl zu konvertieren, wenn ich die Posts loop und ihren Inhalt bekomme.
Soweit visuell, funktioniert es perfekt ... Aber wenn ich versuche, um den Preis zu bestellen ... Es wird durcheinander gebracht.
Hier wird die Funktion ich habe:
//convert the number wich is a string, to float
function tofloat($num) {
$dotPos = strrpos($num, '.');
$commaPos = strrpos($num, ',');
$sep = (($dotPos > $commaPos) && $dotPos) ? $dotPos :
((($commaPos > $dotPos) && $commaPos) ? $commaPos : false);
if (!$sep) {
return floatval(preg_replace("/[^0-9]/", "", $num));
}
return floatval(
preg_replace("/[^0-9]/", "", substr($num, 0, $sep)) . ',' .
preg_replace("/[^0-9]/", "", substr($num, $sep+1, strlen($num)))
);
}
$value = get_field('preco_anuncio');
$precoFinal = tofloat($value);
Irgendwelche Ideen, wie man das lösen? Ich muss das "Visuelle" mit Punkten und Kommas erhalten. Wie: 3.567,00 €