Ich versuche, Bau Stationierung zu formatieren, aber ich kann nicht herausfinden, wie die preg_replace-Funktion erhalten eine variable Anzahl von führenden Zeichen zu akzeptieren. Das Format ist [Variable führende Zeichen] + XX.XX Das ist, was ich jetzt bin mit:PHP Zahlenformat (Bau Station)
Eingang:
0
20
160
5005.5
30096.56
1000000000.00
Funktion:
function formatStation($number){
$number = sprintf('%06.2f', $number);
$number = preg_replace('/([0-9])([0-9]{2})/', '$1+$2', $number);
return $number;
}
Ausgang:
0+00.00
0+20.00
1+60.00
5+005.50 <-
3+0096.56 <-
1+000000000.00 <-
Der korrekte Ausgang sollte sein:
0+00.00
0+20.00
1+60.00
50+05.50 <-
300+96.56 <-
10000000+00.00 <-
"Bau Stationierung" ist, was? –
Der nächste Satz erklärt es. Das Format ist XXX ... XX + XX.XX. Es wird in der Straßenbauindustrie verwendet. – gunnarrr
Während diese Codes aus numerischen Symbolen bestehen, sind sie keine Zahlen und sollten nicht als solche gespeichert werden, insbesondere nicht, wenn führende Nullen eine inhärente Bedeutung haben, und * insbesondere * nicht als Gleitkommazahlen, da sie inhärent ungenau sind. Speichern Sie diese Codes als * Strings *. Speichern Sie Dinge nur als numerische Typen, wenn Sie sie mathematisch berechnen möchten. – Sammitch