Соответственно, надо обработать введенное пользователем значение и передать его по протоколу именно в таком формате.Это понятно, проблема в том, что в данном случае не используется MySQLАвтор оригинала: DiMA
MySQL поддерживает BIGINT, соотв. читаем как строку и делаем че хотим
Да и все равно, даже прочитав из БД 8-байтовое число как строку, как потом можно было бы привести его к целому типу и побить побайтово?Изначально - это строка-"число", которая приходит от пользователя (которую я пытаюсь отправить принимающей стороне) либо строка байтов, разделенных пробелами, которые мне приходят от той же принимающей стороны (которая на этот раз выступает в роли отправляющей стороны). То есть, грубо говоря, я получаю набор из 8 байтов, преобразую его в 8-байтовое целое, которое потом отображаю пользователю в инпуте, пользователь это число меняет, возвращает мне в форме строки, которую мне надо интерпретировать как 8-байтовое целое, разложить по байтам и отправить в форме той же строки байтов, разделенных пробелами, обратно. Это то, как я хочу, чтобы оно работалоАвтор оригинала: dimagolov
Sancho, изначально, как у ТЕБЯ это 8-байтовое число представлено?
Это реально?Понял, да я и не спорю, просто по его (димаголов'а) просьбе уточнял свою ситуацию. Буду копать bc, спасибоАвтор оригинала: rotoZOOM
Sancho для преобразования числа из одной системы счисления в другую (намекаю из 10-ричной в 256-ричную), тебе нужны только 2 операции: деление и остаток от деления. Обе они реализованы в bc, о чем тебе говорил в первом посте димаголов.

Все таки нужен.Both frombase and tobase have to be between 2 and 36, inclusive.
echo base_convert(str_repeat('FF',8),16,10); // 18446744073709552046
Хотя, полагаю, можно было это обойти.base_convert() may lose precision on large numbers due to properties related to the internal "double" or "float" type used. Please see the Floating point numbers section in the manual for more specific information and limitations.