<?php
$values = [
'0',
'-0',
'1',
'-1',
'0.0',
'1.1',
'-1.1',
'0x111',
'0111',
'0b111',
'-0x111',
'-0111',
'-0b111',
'0.1e2',
'-0.1e2',
'0.1e-2',
'-0.1e-2',
];
printf(' string | float | int' . PHP_EOL);
foreach ($values as $value) {
$float = filter_var($value, FILTER_VALIDATE_FLOAT, FILTER_REQUIRE_SCALAR);
$int = filter_var($value, FILTER_VALIDATE_INT, FILTER_REQUIRE_SCALAR);
printf('%7s | %6s | %2s%s', $value, $float, $int, PHP_EOL);
}
preferences:
60.54 ms | 402 KiB | 5 Q