public function hex_to_dec($hex) { $dec = 0; $bitval = 1; $len = strlen($hex); for ($pos = $len - 1; $pos >= 0; --$pos) { $dec = bcadd($dec, bcmul(hexdec($hex[$pos]), $bitval)); $bitval = bcmul($bitval, 16); } return $dec; }