Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

152
Vistas
I would like to change a string of numbers of length 54 characters from base 10 to base 16 in js or php
<?php
    function base16($str){
        $str = base_convert($str,10,16);
        echo $str;
    }
    base16("000012345678920190113163721231000011101000000000100001");

    //8727f63a15f8a0000000000000000000000000000
?>

I have this number array in base 10

000012345678920190113163721231000011101000000000100001

and the expected result should be

8727F63A15F8976591FDDE5B387C5D015A29E06A1
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

You can use BigInt to solve this in JS

console.log(
  BigInt(
      "000012345678920190113163721231000011101000000000100001"
  ).toString(16)
)

about 4 years ago · Juan Pablo Isaza Denunciar

0

You can try this-

function convBase($numberInput, $fromBaseInput, $toBaseInput)
{
    if ($fromBaseInput==$toBaseInput) return $numberInput;
    $fromBase = str_split($fromBaseInput,1);
    $toBase = str_split($toBaseInput,1);
    $number = str_split($numberInput,1);
    $fromLen=strlen($fromBaseInput);
    $toLen=strlen($toBaseInput);
    $numberLen=strlen($numberInput);
    $retval='';
    if ($toBaseInput == '0123456789')
    {
        $retval=0;
        for ($i = 1;$i <= $numberLen; $i++)
            $retval = bcadd($retval, bcmul(array_search($number[$i-1], $fromBase),bcpow($fromLen,$numberLen-$i)));
        return $retval;
    }
    if ($fromBaseInput != '0123456789')
        $base10=convBase($numberInput, $fromBaseInput, '0123456789');
    else
        $base10 = $numberInput;
    if ($base10<strlen($toBaseInput))
        return $toBase[$base10];
    while($base10 != '0')
    {
        $retval = $toBase[bcmod($base10,$toLen)].$retval;
        $base10 = bcdiv($base10,$toLen,0);
    }
    return $retval;
}
?>

Then

<?php
convBase('000012345678920190113163721231000011101000000000100001', '0123456789', '0123456789ABCDEF');
?>

parameters->

dataToConvert
fromBase
toBase
about 4 years ago · Juan Pablo Isaza Denunciar

0

Can you use GMP ?

<?php
$str = '000012345678920190113163721231000011101000000000100001';
echo strtoupper(gmp_strval(gmp_init($str, 10), 16));
// 8727F63A15F8976591FDDE5B387C5D015A29E06A1
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda