pack() and unpack() provide a set of powerful tools for reading, creating, and manipulating binary data.
pack() and unpack() are a lot like tools for working on your car. You don't need them to drive the car, but as soon as you want to really monkey around under the hood, you can't live without them. These functions let you directly manipulate binary data. By combining them with the file functions, you can write applications that can read and write almost any binary file format. See the examples in unpack() on reading dbf files for a small example of the things that can be accomplished with these functions.
Camel wrestlers will recognize these functions - they were borrowed from Perl and behave in almost the same way. There are a few minor differences: Not all of the format codes are supported, the format strings can only have spaces in a few specific places, and unpack() returns the parsed data in an associative array.
PHP Functions Essential Reference. Copyright © 2002 by New Riders Publishing (Authors: Zak Greant, Graeme Merrall, Torben Wilson, Brett Michlitsch). This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). The authors of this book have elected not to choose any options under the OPL. This online book was obtained from http://www.fooassociates.com/phpfer/ and is designed to provide information about the PHP programming language, focusing on PHP version 4.0.4 for the most part. The information is provided on an as-is basis, and no warranty or fitness is implied. All persons and entities shall have neither liability nor responsibility to any person or entity with respect to any loss or damage arising from the information contained in this book.