Я работаю с недокументированным API, который обслуживает номер версии как значение hexdec
. Я sh для преобразования этого в строку управления версиями.
Пример
API предоставляет следующее значение: 117473280
(hexdec('7008000')
)
Это должно быть преобразован в строку: 7.00
Для этого я сделал следующую функцию:
function getFirmwareFromDechex($dechex) {
if(!empty($dechex) || $dechex !== '0') {
$dechex = dechex($dechex);
$dechex = substr($dechex, 0, 3);
$dechex = number_format($dechex / 100, 2);
return $dechex;
}
return false;
}
echo getFirmwareFromDechex('117473280');
И это работает. Однако, когда ему необходимо преобразовать версию 10.00, он преобразует ее в 1.00.
Как сделать функцию совместимой с более старыми номерами версий, такими как 10.00?
Обновление
Посмотрев, как третьи лица отображают эти версии на своем веб-сайте, мне кажется, что мне нужно дополнить число слева цифрой 0.