Как преобразовать огромное целое число в hex в php?

Как я могу преобразовать это:

9312660682897061594767289296453011313180604726492752614962349778735928598708212386406555876878916185094145420038141655929349984786756296776268556142401047 

в основании 16?

Я нашел эту рекурсивную функцию:

 function bcdechex($dec) { $last = bcmod($dec, 16); $remain = bcdiv(bcsub($dec, $last), 16); if($remain == 0) { return dechex($last); } else { return bcdechex($remain).dechex($last); } } 

но уровень вложенности 100 достигнут, даже если у меня есть xdebug.max_nesting_level = 1000 в моем файле конфигурации php.ini.

Конфигурация xdebug выглядит так:

 ;Xdebug zend_extension = "${path}\php\php546x121216181946\php_xdebug-2.2.1-5.4-vc9.dll" xdebug.default_enable=1 xdebug.remote_enable=1 xdebug.remote_host=127.0.0.1 xdebug.remote_port=9000 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_autostart = false xdebug.dump_globals=1 xdebug.dump=COOKIE,FILES,GET,POST,REQUEST,SERVER,SESSION xdebug.dump.SERVER=REMOTE_ADDR,REQUEST_METHOD,REQUEST_URI xdebug.show_local_vars=1 xdebug.show_mem_delta=1 xdebug.collect_includes=1 xdebug.collect_vars=1 xdebug.collect_params=4 xdebug.collect_return=1 xdebug.auto_trace=0 xdebug.trace_options=0 xdebug.trace_format=0 xdebug.trace_output_dir="${path}\xdebug\trace" xdebug.trace_output_name="trace.%t" xdebug.profiler_enable=0 xdebug.profiler_append=1 xdebug.profiler_enable_trigger=1 xdebug.profiler_output_dir="${path}\xdebug\profiler" xdebug.profiler_output_name="cachegrind.out.%s.%t" xdebug.max_nesting_level = 1000 ;/Xdebug 

У кого-то есть другая функция, чем эта, или любой намек на то, как я могу преобразовать этот целочисленный номер?

Тнак ты!

Related of "Как преобразовать огромное целое число в hex в php?"

Очень легко изменить функцию, которую вы считаете итеративной, а не рекурсивной:

 function bcdechex($dec) { $hex = ''; do { $last = bcmod($dec, 16); $hex = dechex($last).$hex; $dec = bcdiv(bcsub($dec, $last), 16); } while($dec>0); return $hex; } 

Ваш пример $bignum преобразованный в hex, равен: b1cf5653e79bef001acfb0f99d1f34487d16a8253e3a9971e98d46382114e8ac81b5102ab3c56be1f77d0eb754f566c0dacb23d64755e823f35411f9e14c5617