Функция PHP base_convert() не работает более 6 байт

Я программирую веб-приложение, в котором вы вводите шестнадцатеричное значение в поле, и приложение предоставляет вам подробную информацию о том, какой бит установлен. Но я столкнулся с проблемой, если сделать:

base_convert (значение, 16, 2)

с 6-байтовым значением я получаю правильное битовое соответствие, но если я делаю это снова с 7 или более байтовым значением, я получаю строку, которая не является правильным битовым соответствием. Я не знаю, как решить эту проблему, так как это функция PHP. Есть ли альтернатива этой функции в PHP?

Вы внимательно читали документацию? Предупреждение base_convert() может терять точность для больших чисел из-за свойств, связанных с используемым внутренним типом "double" или "float". Более подробную информацию и ограничения см. в разделе «Числа с плавающей запятой» в руководстве.

Lars Stegelitz 15.03.2019 09:15

Да, я заметил это, но мой вопрос был больше о решениях или альтернативах этой проблемы.

Maxime Gouet 15.03.2019 09:21
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
201
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вы должны работать байт за байтом вместо того, чтобы сразу помещать полное значение в функцию base_convert().

Пожалуйста, попробуйте это.

эхо base_convert('значение',16,2); или

$ тест = 'значение'; эхо base_convert ($ тест, 16, 2);

вывод: 10101110

ссылка: http://php.net/manual/en/function.base-convert.php

Другие вопросы по теме