Files
php-react-protocol/doc/pack-ref.md
Christopher Vagnetoft 62a1167055 Initial commit
2026-04-02 22:29:35 +02:00

35 lines
2.3 KiB
Markdown

# PHP pack/unpack reference
| Code | Description |
| ---- | ------------------------------------------------------------ |
| a | NUL-padded string |
| A | SPACE-padded string |
| h | Hex string, low nibble first |
| H | Hex string, high nibble first |
| c | signed char |
| C | unsigned char |
| s | signed short (always 16 bit, machine byte order) |
| S | unsigned short (always 16 bit, machine byte order) |
| n | unsigned short (always 16 bit, big endian byte order) |
| v | unsigned short (always 16 bit, little endian byte order) |
| i | signed integer (machine dependent size and byte order) |
| I | unsigned integer (machine dependent size and byte order) |
| l | signed long (always 32 bit, machine byte order) |
| L | unsigned long (always 32 bit, machine byte order) |
| N | unsigned long (always 32 bit, big endian byte order) |
| V | unsigned long (always 32 bit, little endian byte order) |
| q | signed long long (always 64 bit, machine byte order) |
| Q | unsigned long long (always 64 bit, machine byte order) |
| J | unsigned long long (always 64 bit, big endian byte order) |
| P | unsigned long long (always 64 bit, little endian byte order) |
| f | float (machine dependent size and representation) |
| g | float (machine dependent size, little endian byte order) |
| G | float (machine dependent size, big endian byte order) |
| d | double (machine dependent size and representation) |
| e | double (machine dependent size, little endian byte order) |
| E | double (machine dependent size, big endian byte order) |
| x | NUL byte |
| X | Back up one byte |
| Z | NUL-terminated (ASCIIZ) string, will be NUL padded |
| @ | NUL-fill to absolute position |