3v4l.org

run code in 300+ PHP versions simultaneously
<?php $amounts = [ 1298, 1298.3, 1298.34, 1298.341, 1298.349279745, ]; foreach ($amounts as $amount) { preg_match('/\d+\.{0,1}\d{0,2}/', (string) $amount, $matches); var_dump((float) $matches[0]); }
Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
float(1298) float(1298.3) float(1298.34) float(1298.34) float(1298.34)

preferences:
144.38 ms | 407 KiB | 5 Q