123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385 |
- --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)));
- ?>
- --EXPECT--
- 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] => 0
- )
- 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
- )
|