Re: string functions and manipulations in php Hi Varghese,
These functions let programmer directly manipulate binary data. The distinction between signed and unsigned values only affects the function unpack(), where as function pack() gives the same result for signed and unsigned format codes.
There are some format values available for both Pack and Unpack function. Those possible values are: 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)
f - float (machine dependent size and representation)
d - double (machine dependent size and representation)
x - NUL byte
X - Back up one byte
@ - NUL-fill to absolute position Syntax for pack: pack(format,args+) Syntax for unpack: unpack(format,data)
This function returns an array on success, or FALSE on failure.
Pack Example: <?php
echo pack("C3",80,72,80);
?>
The output of the code above will be:
PHP
Another one is <?php
echo pack("C*",80,72,80);
?>
The output of the code above will be:
PHP
Unpack example: <?php
$data = "PHP";
print_r(unpack("C*",$data));
?>
The output of the code above will be:
Array
(
[1] => 80
[2] => 72
[3] => 80
)
I hope it clear your doubt.
Thanks
__________________ K K Venkata Charya Success is easy to get but difficult to retain |