Работа с бинарными данными
Работа с бинарными данными
pack
Пакетирование данных в двоичную строку.
Синтаксис:
string pack(string format [,mixed $args, ...]);
Функция pack() упаковывает заданные аргументы в бинарную строку, которая затем и возвращается. Формат параметров, а также их количество, задается при помощи строки $format, которая представляет собой набор однобуквенных спецификаторов форматирования - наподобие тех, которые указываются в sprintf(), но только без знака %. После каждого спецификатора может стоять число, которое отмечает, сколько информации будет обработано данным спецификатором. А именно, для форматов a,A,h и H число задает, какое количество символов будет помещено в бинарную строку из тех, что находится в очередном параметре-строке при вызове функции (то есть, определяет размер поля для вывода строки). В случае @ оно определяет абсолютную позицию, в которую будут помещены следующие данные. Для всех остальных спецификаторов следующие за ними числа задают количество аргументов, на которые распространяется действие данного формата. Вместо числа можно указать *, в этом случае подразумевается, что спецификатор действует на все оставшиеся данные.
Вот полный список спецификаторов формата:
// Целое, целое, все остальное - сиволы
$bindata = pack("nvc*", 0x1234, 0x5678, 65, 66);
После выполнения приведенного кода в строке $bindata будет содержаться 6 байтов в такой последовательности:0x12, 0x34, 0x78, 0x56, 0x41, 0x42 (в шестнадцатиричной системе счисления).
unpack
Распаковывает данные из двоичной строки.
Синтаксис:
array unpack(string format, string data);
Распаковывает данные из двоичной строки в массив согласно формату. Возвращает массив, содержащий распакованные элементы.
$array = unpack("c2chars/nint", $binarydata);
Возникающий в результате массив будет содержать "chars1", "chars2" и "int".
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Работа с данными, связанными с процессорами, на этапе компиляции
Работа с данными, связанными с процессорами, на этапе компиляции Описать переменную, которая связана с определенным процессором, на этапе компиляции можно достаточно просто следующим образом.DEFINE_PER_CPU(type, name);Это описание создает переменную типа type с именем name, которая
Работа с данными процессоров на этапе выполнения
Работа с данными процессоров на этапе выполнения Для динамического создания данных, связанных с процессорами, в ядре реализован специальный распределитель памяти, который имеет интерфейс, аналогичный kmalloc(). Эти функции позволяют создать экземпляр участка памяти для
Глава 6 Практическая работа с данными в XML-файлах
Глава 6 Практическая работа с данными в XML-файлах В главе 3 мы уже кратко описывали основные принципы языка XML, которые необходимы для понимания объектной модели сценариев WS XML. В настоящее время применение XML становится все более широким, поэтому настоящая глава посвящена
Работа с бинарными пакетами
Работа с бинарными пакетами Главное действие в отношении пакетов, которые были сочтены полезными — их установка. А основным инструментом установки является внутренняя команда install. В качестве аргументов она принимает имена пакетов — те самые, которые были найдены
Инсталляция, управляемая данными
Инсталляция, управляемая данными Традиционно программы инсталляции используют для управления процессом установки программ скрипты. Каждая инсталляционная программа содержит скрипт, то есть набор инструкций по установке конкретного программного продукта. Эти жестко
Манипулирование данными с помощью объектов
Манипулирование данными с помощью объектов После создания таблиц можно приступить к манипуляциям с данными: вводить данные в таблицы, извлекать их из таблиц, проверять и изменять структуру таблиц. Для манипулирования структурой таблиц используются команды определения
Манипулирование данными с помощью SQL
Манипулирование данными с помощью SQL Команда манипулирования данными (data manipulation command) — это команда SQL, которая изменяет записи. Такие команды создаются на языке манипулирования данными DML, который является подмножеством языка SQL. Эти команды не возвращают записи, а
Глава 5 Работа с данными
Глава 5 Работа с данными В этой главе вы познакомитесь с некоторыми способами организации данных в таблице (сортировка по алфавиту, возрастанию или убыванию, группировка по некоторым общим признакам), которые позволят сделать работу с таблицей более комфортной.Excel
Язык манипулирования данными (DML)
Язык манипулирования данными (DML) Операторы DML, их синтаксис и выражения для поиска и манипулирования наборами данных являются предметом рассмотрения этой части книги.* В главе 20 вводится концепция наборов, структура и синтаксис запросов DML. Глава включает разд. "Тема
11.2. Простой обмен данными
11.2. Простой обмен данными В начале работы с описанными в предыдущем разделе компонентами IdTCPServer и IdTCPChent рассмотрим создание несложного клиент-серверного приложения, клиентская и серверная части которого выполняют следующие функции.• Клиентское приложение соединяется
XSLT при обмене данными
XSLT при обмене данными В предыдущей главе мы обсудили преимущества применения XML в проектах интеграции: определение общего XML-языка снижает трудозатраты по реализации обмена данными между различными системами. При этом экспорт данных в общем формате выполняется
12.8. Работа с данными при помощи запросов
12.8. Работа с данными при помощи запросов В режиме таблицы доступны самые разные операции с данными – просмотр, сортировка, фильтрация, обновление и печать. Однако очень часто приходится проводить вычисления или просматривать данные из нескольких таблиц. Отобрать нужные
Электронный обмен данными
Электронный обмен данными Компании тесно взаимодействуют со своими клиентами и производителями. Для многих крупных компаний эти отношения влекут за собой непосредственную связь между их компьютерными системами. Electronic Data Interchange (EDI) это система, предназначенная для
Работа с внешними данными
Работа с внешними данными Загрузка и отображение на рабочем листе содержимого внешних файлов — это только часть возможностей, предлагаемых Flash для общения с внешним электронным миром. Другая, весьма обширная, часть позволяет получать и обрабатывать данные, поставляемые