The base_convert() function doesn't seem to preserve the sign.
For example:
var_dump (base_convert ('-100', 10, 10));
The output of this is 100
Is there a way of converting bases without losing the sign?
I did not see a PHP standard function to do so, however you could write your own.
function signed_base_convert($number, $src_base, $dest_base)
{
$sign = (intval($number, $src_base) >= 0 ? '' : '-');
return $sign . base_convert($number, $src_base, $dest_base);
}
I do not have access to PHP at the moment to test this, but it should give you a good idea.
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