mirror of
https://github.com/php/php-src.git
synced 2024-10-19 23:44:13 +00:00
386 lines
4.9 KiB
PHP
386 lines
4.9 KiB
PHP
--TEST--
|
|
Generic pack()/unpack() tests
|
|
--SKIPIF--
|
|
<?php
|
|
if (PHP_INT_MAX > 2147483647) {
|
|
die("skip 32bit test only");
|
|
}
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
print_r(unpack("A", pack("A", "hello world")));
|
|
print_r(unpack("A*", pack("A*", "hello world")));
|
|
echo '"'.pack("A9", "hello").'"';
|
|
echo "\n";
|
|
|
|
print_r(unpack("C", pack("C", -127)));
|
|
print_r(unpack("C", pack("C", 127)));
|
|
print_r(unpack("C", pack("C", 255)));
|
|
print_r(unpack("C", pack("C", -129)));
|
|
|
|
print_r(unpack("H", pack("H", 0x04)));
|
|
|
|
print_r(unpack("I", pack("I", 65534)));
|
|
print_r(unpack("I", pack("I", 0)));
|
|
print_r(unpack("I", pack("I", -1000)));
|
|
print_r(unpack("I", pack("I", -64434)));
|
|
print_r(unpack("I", pack("I", 4294967296)));
|
|
print_r(unpack("I", pack("I", -4294967296)));
|
|
|
|
print_r(unpack("L", pack("L", 65534)));
|
|
print_r(unpack("L", pack("L", 0)));
|
|
print_r(unpack("L", pack("L", 2147483650)));
|
|
print_r(unpack("L", pack("L", 4294967295)));
|
|
print_r(unpack("L", pack("L", -2147483648)));
|
|
|
|
print_r(unpack("N", pack("N", 65534)));
|
|
print_r(unpack("N", pack("N", 0)));
|
|
print_r(unpack("N", pack("N", 2147483650)));
|
|
print_r(unpack("N", pack("N", 4294967296)));
|
|
print_r(unpack("N", pack("N", -2147483648)));
|
|
print_r(unpack("N", pack("N", -30000)));
|
|
|
|
print_r(unpack("S", pack("S", 65534)));
|
|
print_r(unpack("S", pack("S", 65537)));
|
|
print_r(unpack("S", pack("S", 0)));
|
|
print_r(unpack("S", pack("S", -1000)));
|
|
print_r(unpack("S", pack("S", -64434)));
|
|
print_r(unpack("S", pack("S", -65535)));
|
|
|
|
print_r(unpack("V", pack("V", 65534)));
|
|
print_r(unpack("V", pack("V", 0)));
|
|
print_r(unpack("V", pack("V", 2147483650)));
|
|
print_r(unpack("V", pack("V", 4294967296)));
|
|
print_r(unpack("V", pack("V", -2147483648)));
|
|
|
|
print_r(unpack("a", pack("a", "hello world")));
|
|
print_r(unpack("a*", pack("a*", "hello world")));
|
|
|
|
print_r(unpack("c", pack("c", -127)));
|
|
print_r(unpack("c", pack("c", 127)));
|
|
print_r(unpack("c", pack("c", 255)));
|
|
print_r(unpack("c", pack("c", -129)));
|
|
|
|
print_r(unpack("h", pack("h", 3000000)));
|
|
|
|
print_r(unpack("i", pack("i", 65534)));
|
|
print_r(unpack("i", pack("i", 0)));
|
|
print_r(unpack("i", pack("i", -1000)));
|
|
print_r(unpack("i", pack("i", -64434)));
|
|
print_r(unpack("i", pack("i", -65535)));
|
|
print_r(unpack("i", pack("i", -2147483647)));
|
|
|
|
print_r(unpack("l", pack("l", 65534)));
|
|
print_r(unpack("l", pack("l", 0)));
|
|
print_r(unpack("l", pack("l", 2147483650)));
|
|
print_r(unpack("l", pack("l", 4294967296)));
|
|
print_r(unpack("l", pack("l", -2147483648)));
|
|
|
|
print_r(unpack("n", pack("n", 65534)));
|
|
print_r(unpack("n", pack("n", 65537)));
|
|
print_r(unpack("n", pack("n", 0)));
|
|
print_r(unpack("n", pack("n", -1000)));
|
|
print_r(unpack("n", pack("n", -64434)));
|
|
print_r(unpack("n", pack("n", -65535)));
|
|
|
|
print_r(unpack("s", pack("s", 32767)));
|
|
print_r(unpack("s", pack("s", 65535)));
|
|
print_r(unpack("s", pack("s", 0)));
|
|
print_r(unpack("s", pack("s", -1000)));
|
|
print_r(unpack("s", pack("s", -64434)));
|
|
print_r(unpack("s", pack("s", -65535)));
|
|
|
|
print_r(unpack("v", pack("v", 65534)));
|
|
print_r(unpack("v", pack("v", 65537)));
|
|
print_r(unpack("v", pack("v", 0)));
|
|
print_r(unpack("v", pack("v", -1000)));
|
|
print_r(unpack("v", pack("v", -64434)));
|
|
print_r(unpack("v", pack("v", -65535)));
|
|
?>
|
|
--EXPECTF--
|
|
Array
|
|
(
|
|
[1] => h
|
|
)
|
|
Array
|
|
(
|
|
[1] => hello world
|
|
)
|
|
"hello "
|
|
Array
|
|
(
|
|
[1] => 129
|
|
)
|
|
Array
|
|
(
|
|
[1] => 127
|
|
)
|
|
Array
|
|
(
|
|
[1] => 255
|
|
)
|
|
Array
|
|
(
|
|
[1] => 127
|
|
)
|
|
Array
|
|
(
|
|
[1] => 4
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1000
|
|
)
|
|
Array
|
|
(
|
|
[1] => -64434
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483648
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483646
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483648
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483646
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483648
|
|
)
|
|
Array
|
|
(
|
|
[1] => -30000
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => 64536
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1102
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483646
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483648
|
|
)
|
|
Array
|
|
(
|
|
[1] => h
|
|
)
|
|
Array
|
|
(
|
|
[1] => hello world
|
|
)
|
|
Array
|
|
(
|
|
[1] => -127
|
|
)
|
|
Array
|
|
(
|
|
[1] => 127
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 127
|
|
)
|
|
Array
|
|
(
|
|
[1] => 3
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1000
|
|
)
|
|
Array
|
|
(
|
|
[1] => -64434
|
|
)
|
|
Array
|
|
(
|
|
[1] => -65535
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483647
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483646
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -2147483648
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => 64536
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1102
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 32767
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => -1000
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1102
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 65534
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|
|
Array
|
|
(
|
|
[1] => 0
|
|
)
|
|
Array
|
|
(
|
|
[1] => 64536
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1102
|
|
)
|
|
Array
|
|
(
|
|
[1] => 1
|
|
)
|