$a = '88'; $b = '88 8888'; echo (int)$a; echo (int)$b; as expected, both produce 88. Anyone know if there's a string to int function that will work for $b's value and produce 888888? I've googled around a bit with no luck.
Thanks
You can remove the spaces before casting to int:
(int)str_replace(' ', '', $b); Also, if you want to strip other commonly used digit delimiters (such as ,), you can give the function an array (beware though -- in some countries, like mine for example, the comma is used for fraction notation):
(int)str_replace(array(' ', ','), '', $b); You can use the str_replace when you declare your variable $b like that :
$b = str_replace(" ", "", '88 8888'); echo (int)$b; Or the most beautiful solution is to use intval :
$b = intval(str_replace(" ", "", '88 8888'); echo $b; If your value '88 888' is from an other variable, just replace the '88 888' by the variable who contains your String.
ISO standard 31-0when it casts a string to integer. PHP has it's own specification, outlined here: String conversion to numbers.