Я пытаюсь преобразовать шестнадцатеричное значение в десятичное значение в PHP.
В PHP мой код выглядит следующим образом:
<?
ini_set("precision", 50);
echo hexdec("98999977485558");
?>
Я получаю следующий результат: 42953080870294872
Когда я пошел, чтобы проверить результат шестнадцатеричного в десятичное преобразование на некоторых сайтах, я был удивлен, увидев, что 98999977485558 стал 42953080870294870.
Я тестировал с этим сайтом, например : https://codebeautify.org/hex-decimal-converter
Просматривая исходный код, я вижу, что он использует функцию parseInt JavaScript.
Так что я делаю тест со следующим код:
parseInt("98999977485558", 16);
С этим кодом я получаю результат: 42953080870294870.
Поэтому я ищу правильное десятичное значение для шестнадцатеричного значения 98999977485558.
42953080870294872 или 42953080870294870?
Кроме того, почему результат выглядит по-разному между PHP и JavaScript?