«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как преобразовать строки в двоичные и обратно в PHP?

Как преобразовать строки в двоичные и обратно в PHP?

Опубликовано 8 ноября 2024 г.
Просматривать:893

How to Convert Strings to Binary and Back in PHP?

Преобразование двоичных и строковых данных в PHP: подробное руководство

При работе с данными в PHP часто необходимо конвертировать между различными форматами. Одно из распространенных преобразований — между строками и двоичными числами. Будь то безопасное хранение данных или оптимизация производительности, важно понимать, как конвертировать эти форматы.

Проблема:

Как преобразовать строку в двоичный формат, а затем преобразовать ее обратно в строку в стандартной библиотеке PHP? Это общая потребность в безопасном хранении и манипулировании данными.

Решение:

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

Двоичное преобразование в строку:

Чтобы преобразовать двоичную строку обратно в исходную строку, мы можем использовать команду package () и base_convert(). Функция package() принимает строку формата и строку двоичных данных и объединяет их для создания строки. В нашем случае строка формата — «H*», что означает шестнадцатеричную строку. Функция base_convert() преобразует строку из одной базы в другую. В этом случае мы конвертируем шестнадцатеричную строку в набор символов ASCII:

// Convert binary into a string
$string = pack('H*', base_convert('0101001101110100011000010110001101101011', 2, 16));

Строка в двоичный файл:

Чтобы преобразовать строку в двоичный файл, мы можем использовать unpack( ) и base_convert(). Функция unpack() принимает строку формата и строку и извлекает данные из строки в соответствии с указанным форматом. В нашем случае мы указываем формат «H*» для извлечения шестнадцатеричных данных. Функция base_convert() преобразует строку из одной базы в другую. Здесь мы преобразуем строку ASCII в шестнадцатеричную строку, которая представляет двоичное представление:

// Convert a string into binary
$binary = unpack('H*', 'Stack');
echo base_convert($binary[1], 16, 2);

Пример:

Давайте объединим все это на примере:

// Convert "Stack" to binary
$binary = unpack('H*', 'Stack');
$binaryString = base_convert($binary[1], 16, 2);
echo "Binary: $binaryString\n";

// Convert binary back to "Stack"
$asciiString = pack('H*', base_convert($binaryString, 2, 16));
echo "String: $asciiString\n";

Вывод:

Binary: 0101001101110100011000010110001101101011
String: Stack

Используя эти функции, мы можем эффективно преобразовывать строки в двоичные файлы в PHP. Эти знания бесценны для шифрования данных, манипулирования файлами и решения множества других задач.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3