I can use intval
, but according to the documentation:
Strings will most likely return 0 although this depends on the leftmost characters of the string. The common rules of integer casting apply.
... and the value to parse can be 0
, that is I will not able to distinguish between zero and a string
.
$value1 = '0';
$value2 = '15';
$value3 = 'foo'; // Should throw an exeption
Real question is: how can I parse the string and distinguish between a string
that cast to 0
and a zero itself?
In the code below, $int_value
will be set to null
if $value
wasn't an actual numeric string (base 10 and positive), otherwise it will be set to the integer value of $value
:
$int_value = ctype_digit($value) ? intval($value) : null;
if ($int_value === null)
{
// $value wasn't all numeric
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With