Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

base_convert and negative numbers

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?

like image 348
GordonM Avatar asked Aug 13 '11 14:08

GordonM


1 Answers

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.

like image 102
Brandon Horsley Avatar answered Sep 28 '22 14:09

Brandon Horsley