You can convert a hexadecimal string to an integer by using the hexdec()
function, for example, like so:
var_dump(hexdec('4D2')); // int(12345) var_dump(hexdec('04D2')); // int(12345) var_dump(hexdec('0x4D2')); // int(12345) var_dump(hexdec('0x04D2')); // int(12345)
This works for values prefixed with 0x
, as well as values that don't have a prefix.
For invalid values passed to hexdec()
(i.e. values beyond 0-9
and a-f
), this would show a deprecation message in PHP 7.4+ (and silently ignored in versions prior):
// ...
// Deprecated: Invalid characters passed for attempted conversion, these have been ignored
var_dump(hexdec('foobar'));
This post was published by Daniyal Hamid. Daniyal currently works as the Head of Engineering in Germany and has 20+ years of experience in software engineering, design and marketing. Please show your love and support by sharing this post.