summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/krsort_variation8.phpt
blob: 50a9d63e57c492f10e9973f584a6c502df7c2e03 (plain)
ofshex dumpascii
0000 2d 2d 54 45 53 54 2d 2d 0a 54 65 73 74 20 6b 72 73 6f 72 74 28 29 20 66 75 6e 63 74 69 6f 6e 20 --TEST--.Test.krsort().function.
0020 3a 20 75 73 61 67 65 20 76 61 72 69 61 74 69 6f 6e 73 20 2d 20 73 6f 72 74 20 6d 69 78 65 64 20 :.usage.variations.-.sort.mixed.
0040 76 61 6c 75 65 73 2c 20 27 73 6f 72 74 5f 66 6c 61 67 73 27 20 61 73 20 64 65 66 61 75 6c 74 2f values,.'sort_flags'.as.default/
0060 53 4f 52 54 5f 52 45 47 55 4c 41 52 20 28 4f 4b 20 74 6f 20 66 61 69 6c 20 61 73 20 72 65 73 75 SORT_REGULAR.(OK.to.fail.as.resu
0080 6c 74 20 69 73 20 75 6e 70 72 65 64 65 63 74 61 62 6c 65 29 0a 2d 2d 46 49 4c 45 2d 2d 0a 3c 3f lt.is.unpredectable).--FILE--.<?
00a0 70 68 70 0a 2f 2a 20 50 72 6f 74 6f 74 79 70 65 20 20 3a 20 62 6f 6f 6c 20 6b 72 73 6f 72 74 20 php./*.Prototype..:.bool.krsort.
00c0 28 20 61 72 72 61 79 20 26 24 61 72 72 61 79 20 5b 2c 20 69 6e 74 20 24 73 6f 72 74 5f 66 6c 61 (.array.&$array.[,.int.$sort_fla
00e0 67 73 5d 20 29 0a 20 2a 20 44 65 73 63 72 69 70 74 69 6f 6e 3a 20 53 6f 72 74 20 61 6e 20 61 72 gs].)..*.Description:.Sort.an.ar
0100 72 61 79 20 62 79 20 6b 65 79 20 69 6e 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 2c 20 6d 61 69 ray.by.key.in.reverse.order,.mai
0120 6e 74 61 69 6e 69 6e 67 20 6b 65 79 20 74 6f 20 64 61 74 61 20 63 6f 72 72 65 6c 61 74 69 6f 6e ntaining.key.to.data.correlation
0140 2e 0a 20 2a 20 53 6f 75 72 63 65 20 63 6f 64 65 3a 20 65 78 74 2f 73 74 61 6e 64 61 72 64 2f 61 ...*.Source.code:.ext/standard/a
0160 72 72 61 79 2e 63 0a 2a 2f 0a 0a 2f 2a 0a 20 2a 20 74 65 73 74 69 6e 67 20 6b 72 73 6f 72 74 28 rray.c.*/../*..*.testing.krsort(
0180 29 20 62 79 20 70 72 6f 76 69 64 69 6e 67 20 61 72 72 61 79 20 6f 66 20 6d 69 78 65 64 20 76 61 ).by.providing.array.of.mixed.va
01a0 6c 75 65 73 20 66 6f 72 20 24 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 0a 20 2a 20 77 69 74 68 lues.for.$array.argument..*.with
01c0 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6c 61 67 20 20 76 61 6c 75 65 73 3a 0a 20 2a 20 20 31 2e 66 .following.flag..values:..*..1.f
01e0 6c 61 67 20 76 61 6c 75 65 20 61 73 20 64 65 66 75 61 6c 74 0a 20 2a 20 20 32 2e 53 4f 52 54 5f lag.value.as.defualt..*..2.SORT_
0200 52 45 47 55 4c 41 52 20 2d 20 63 6f 6d 70 61 72 65 20 69 74 65 6d 73 20 6e 6f 72 6d 61 6c 6c 79 REGULAR.-.compare.items.normally
0220 0a 2a 2f 0a 0a 65 63 68 6f 20 22 2a 2a 2a 20 54 65 73 74 69 6e 67 20 6b 72 73 6f 72 74 28 29 20 .*/..echo."***.Testing.krsort().
0240 3a 20 75 73 61 67 65 20 76 61 72 69 61 74 69 6f 6e 73 20 2a 2a 2a 5c 6e 22 3b 0a 0a 2f 2f 20 6d :.usage.variations.***\n";..//.m
0260 69 78 65 64 20 76 61 6c 75 65 20 61 72 72 61 79 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 ixed.value.array.with.different.
0280 6b 65 79 20 76 61 6c 75 65 73 0a 24 6d 69 78 65 64 5f 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 key.values.$mixed_values.=.array
02a0 20 28 0a 20 20 22 61 72 72 61 79 31 22 20 3d 3e 20 61 72 72 61 79 28 29 2c 0a 20 20 22 61 72 72 .(..."array1".=>.array(),..."arr
02c0 61 79 32 22 20 3d 3e 20 61 72 72 61 79 20 28 20 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 31 5d 22 ay2".=>.array.(."sub_array[2,1]"
02e0 20 3d 3e 20 61 72 72 61 79 28 33 33 2c 2d 35 2c 36 29 2c 20 22 73 75 62 5f 61 72 72 61 79 5b 32 .=>.array(33,-5,6),."sub_array[2
0300 2c 32 5d 22 20 3d 3e 20 61 72 72 61 79 28 31 31 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ,2]".=>.array(11),..............
0320 20 20 20 20 20 20 20 20 20 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 33 5d 22 20 3d 3e 20 61 72 72 ........."sub_array[2,3]".=>.arr
0340 61 79 28 32 32 2c 2d 35 35 29 2c 20 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 34 5d 22 20 3d 3e 20 ay(22,-55),."sub_array[2,4]".=>.
0360 61 72 72 61 79 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 2c 0a 20 array().....................),..
0380 20 34 20 3d 3e 20 34 2c 20 22 34 22 20 3d 3e 20 22 34 22 2c 20 34 2e 30 31 20 3d 3e 20 34 2e 30 .4.=>.4,."4".=>."4",.4.01.=>.4.0
03a0 31 2c 20 22 62 22 20 3d 3e 20 22 62 22 2c 20 22 35 22 20 3d 3e 20 22 35 22 2c 20 2d 32 20 3d 3e 1,."b".=>."b",."5".=>."5",.-2.=>
03c0 20 2d 32 2c 20 2d 32 2e 30 31 20 3d 3e 20 2d 32 2e 30 31 2c 0a 20 20 2d 32 2e 39 38 39 38 39 20 .-2,.-2.01.=>.-2.01,...-2.98989.
03e0 3d 3e 20 2d 32 2e 39 38 39 38 39 2c 20 22 2d 2e 39 22 20 3d 3e 20 22 2d 2e 39 22 2c 20 22 54 72 =>.-2.98989,."-.9".=>."-.9",."Tr
0400 75 65 22 20 3d 3e 20 22 54 72 75 65 22 2c 20 22 22 20 3d 3e 20 20 22 22 2c 20 4e 55 4c 4c 20 3d ue".=>."True",."".=>.."",.NULL.=
0420 3e 20 4e 55 4c 4c 2c 0a 20 20 22 61 62 22 20 3d 3e 20 22 61 62 22 2c 20 22 61 62 63 64 22 20 3d >.NULL,..."ab".=>."ab",."abcd".=
0440 3e 20 22 61 62 63 64 22 2c 20 30 2e 30 31 20 3d 3e 20 30 2e 30 31 2c 20 2d 30 20 3d 3e 20 2d 30 >."abcd",.0.01.=>.0.01,.-0.=>.-0
0460 2c 20 27 27 20 3d 3e 20 27 27 20 2c 0a 20 20 22 61 62 63 64 5c 78 30 30 61 62 63 64 5c 78 30 30 ,.''.=>.''.,..."abcd\x00abcd\x00
0480 61 62 63 64 22 20 3d 3e 20 22 61 62 63 64 5c 78 30 30 61 62 63 64 5c 78 30 30 61 62 63 64 22 2c abcd".=>."abcd\x00abcd\x00abcd",
04a0 20 30 2e 30 30 31 20 3d 3e 20 30 2e 30 30 31 0a 29 3b 0a 0a 65 63 68 6f 20 22 5c 6e 2d 2d 20 54 .0.001.=>.0.001.);..echo."\n--.T
04c0 65 73 74 69 6e 67 20 6b 72 73 6f 72 74 28 29 20 62 79 20 73 75 70 70 6c 79 69 6e 67 20 6d 69 78 esting.krsort().by.supplying.mix
04e0 65 64 20 76 61 6c 75 65 20 61 72 72 61 79 2c 20 27 66 6c 61 67 27 20 76 61 6c 75 65 20 69 73 20 ed.value.array,.'flag'.value.is.
0500 64 65 66 75 61 6c 74 20 2d 2d 5c 6e 22 3b 0a 24 74 65 6d 70 5f 61 72 72 61 79 20 3d 20 24 6d 69 defualt.--\n";.$temp_array.=.$mi
0520 78 65 64 5f 76 61 6c 75 65 73 3b 0a 76 61 72 5f 64 75 6d 70 28 20 6b 72 73 6f 72 74 28 24 74 65 xed_values;.var_dump(.krsort($te
0540 6d 70 5f 61 72 72 61 79 29 20 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 74 65 6d 70 5f 61 72 72 61 mp_array).);.var_dump($temp_arra
0560 79 29 3b 0a 0a 65 63 68 6f 20 22 5c 6e 2d 2d 20 54 65 73 74 69 6e 67 20 6b 72 73 6f 72 74 28 29 y);..echo."\n--.Testing.krsort()
0580 20 62 79 20 73 75 70 70 6c 79 69 6e 67 20 6d 69 78 65 64 20 76 61 6c 75 65 20 61 72 72 61 79 2c .by.supplying.mixed.value.array,
05a0 20 27 66 6c 61 67 27 20 76 61 6c 75 65 20 69 73 20 53 4f 52 54 5f 52 45 47 55 4c 41 52 20 2d 2d .'flag'.value.is.SORT_REGULAR.--
05c0 5c 6e 22 3b 0a 24 74 65 6d 70 5f 61 72 72 61 79 20 3d 20 24 6d 69 78 65 64 5f 76 61 6c 75 65 73 \n";.$temp_array.=.$mixed_values
05e0 3b 0a 76 61 72 5f 64 75 6d 70 28 20 6b 72 73 6f 72 74 28 24 74 65 6d 70 5f 61 72 72 61 79 2c 20 ;.var_dump(.krsort($temp_array,.
0600 53 4f 52 54 5f 52 45 47 55 4c 41 52 29 20 29 3b 0a 76 61 72 5f 64 75 6d 70 28 24 74 65 6d 70 5f SORT_REGULAR).);.var_dump($temp_
0620 61 72 72 61 79 29 3b 0a 0a 65 63 68 6f 20 22 44 6f 6e 65 5c 6e 22 3b 0a 3f 3e 0a 2d 2d 45 58 50 array);..echo."Done\n";.?>.--EXP
0640 45 43 54 46 2d 2d 0a 2a 2a 2a 20 54 65 73 74 69 6e 67 20 6b 72 73 6f 72 74 28 29 20 3a 20 75 73 ECTF--.***.Testing.krsort().:.us
0660 61 67 65 20 76 61 72 69 61 74 69 6f 6e 73 20 2a 2a 2a 0a 0a 2d 2d 20 54 65 73 74 69 6e 67 20 6b age.variations.***..--.Testing.k
0680 72 73 6f 72 74 28 29 20 62 79 20 73 75 70 70 6c 79 69 6e 67 20 6d 69 78 65 64 20 76 61 6c 75 65 rsort().by.supplying.mixed.value
06a0 20 61 72 72 61 79 2c 20 27 66 6c 61 67 27 20 76 61 6c 75 65 20 69 73 20 64 65 66 75 61 6c 74 20 .array,.'flag'.value.is.defualt.
06c0 2d 2d 0a 62 6f 6f 6c 28 74 72 75 65 29 0a 61 72 72 61 79 28 31 33 29 20 7b 0a 20 20 5b 35 5d 3d --.bool(true).array(13).{...[5]=
06e0 3e 0a 20 20 73 74 72 69 6e 67 28 31 29 20 22 35 22 0a 20 20 5b 34 5d 3d 3e 0a 20 20 66 6c 6f 61 >...string(1)."5"...[4]=>...floa
0700 74 28 34 2e 30 31 29 0a 20 20 5b 22 62 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 29 20 22 62 t(4.01)...["b"]=>...string(1)."b
0720 22 0a 20 20 5b 22 61 72 72 61 79 32 22 5d 3d 3e 0a 20 20 61 72 72 61 79 28 34 29 20 7b 0a 20 20 "...["array2"]=>...array(4).{...
0740 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 31 5d 22 5d 3d 3e 0a 20 20 20 20 61 72 72 61 79 ..["sub_array[2,1]"]=>.....array
0760 28 33 29 20 7b 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 33 33 29 0a (3).{.......[0]=>.......int(33).
0780 20 20 20 20 20 20 5b 31 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 2d 35 29 0a 20 20 20 20 20 20 ......[1]=>.......int(-5).......
07a0 5b 32 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 36 29 0a 20 20 20 20 7d 0a 20 20 20 20 5b 22 73 [2]=>.......int(6).....}.....["s
07c0 75 62 5f 61 72 72 61 79 5b 32 2c 32 5d 22 5d 3d 3e 0a 20 20 20 20 61 72 72 61 79 28 31 29 20 7b ub_array[2,2]"]=>.....array(1).{
07e0 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 31 31 29 0a 20 20 20 20 7d .......[0]=>.......int(11).....}
0800 0a 20 20 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 33 5d 22 5d 3d 3e 0a 20 20 20 20 61 72 .....["sub_array[2,3]"]=>.....ar
0820 72 61 79 28 32 29 20 7b 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 32 ray(2).{.......[0]=>.......int(2
0840 32 29 0a 20 20 20 20 20 20 5b 31 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 2d 35 35 29 0a 20 20 2).......[1]=>.......int(-55)...
0860 20 20 7d 0a 20 20 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 34 5d 22 5d 3d 3e 0a 20 20 20 ..}.....["sub_array[2,4]"]=>....
0880 20 61 72 72 61 79 28 30 29 20 7b 0a 20 20 20 20 7d 0a 20 20 7d 0a 20 20 5b 22 61 72 72 61 79 31 .array(0).{.....}...}...["array1
08a0 22 5d 3d 3e 0a 20 20 61 72 72 61 79 28 30 29 20 7b 0a 20 20 7d 0a 20 20 5b 22 61 62 63 64 00 61 "]=>...array(0).{...}...["abcd.a
08c0 62 63 64 00 61 62 63 64 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 34 29 20 22 61 62 63 64 00 bcd.abcd"]=>...string(14)."abcd.
08e0 61 62 63 64 00 61 62 63 64 22 0a 20 20 5b 22 61 62 63 64 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 abcd.abcd"...["abcd"]=>...string
0900 28 34 29 20 22 61 62 63 64 22 0a 20 20 5b 22 61 62 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 32 (4)."abcd"...["ab"]=>...string(2
0920 29 20 22 61 62 22 0a 20 20 5b 22 54 72 75 65 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 34 29 20 )."ab"...["True"]=>...string(4).
0940 22 54 72 75 65 22 0a 20 20 5b 30 5d 3d 3e 0a 20 20 66 6c 6f 61 74 28 30 2e 30 30 31 29 0a 20 20 "True"...[0]=>...float(0.001)...
0960 5b 22 2d 2e 39 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 33 29 20 22 2d 2e 39 22 0a 20 20 5b 22 ["-.9"]=>...string(3)."-.9"...["
0980 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 30 29 20 22 22 0a 20 20 5b 2d 32 5d 3d 3e 0a 20 20 66 "]=>...string(0).""...[-2]=>...f
09a0 6c 6f 61 74 28 2d 32 2e 39 38 39 38 39 29 0a 7d 0a 0a 2d 2d 20 54 65 73 74 69 6e 67 20 6b 72 73 loat(-2.98989).}..--.Testing.krs
09c0 6f 72 74 28 29 20 62 79 20 73 75 70 70 6c 79 69 6e 67 20 6d 69 78 65 64 20 76 61 6c 75 65 20 61 ort().by.supplying.mixed.value.a
09e0 72 72 61 79 2c 20 27 66 6c 61 67 27 20 76 61 6c 75 65 20 69 73 20 53 4f 52 54 5f 52 45 47 55 4c rray,.'flag'.value.is.SORT_REGUL
0a00 41 52 20 2d 2d 0a 62 6f 6f 6c 28 74 72 75 65 29 0a 61 72 72 61 79 28 31 33 29 20 7b 0a 20 20 5b AR.--.bool(true).array(13).{...[
0a20 35 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 29 20 22 35 22 0a 20 20 5b 34 5d 3d 3e 0a 20 20 66 5]=>...string(1)."5"...[4]=>...f
0a40 6c 6f 61 74 28 34 2e 30 31 29 0a 20 20 5b 22 62 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 29 loat(4.01)...["b"]=>...string(1)
0a60 20 22 62 22 0a 20 20 5b 22 61 72 72 61 79 32 22 5d 3d 3e 0a 20 20 61 72 72 61 79 28 34 29 20 7b ."b"...["array2"]=>...array(4).{
0a80 0a 20 20 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 31 5d 22 5d 3d 3e 0a 20 20 20 20 61 72 .....["sub_array[2,1]"]=>.....ar
0aa0 72 61 79 28 33 29 20 7b 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 33 ray(3).{.......[0]=>.......int(3
0ac0 33 29 0a 20 20 20 20 20 20 5b 31 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 2d 35 29 0a 20 20 20 3).......[1]=>.......int(-5)....
0ae0 20 20 20 5b 32 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 36 29 0a 20 20 20 20 7d 0a 20 20 20 20 ...[2]=>.......int(6).....}.....
0b00 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 32 5d 22 5d 3d 3e 0a 20 20 20 20 61 72 72 61 79 28 31 ["sub_array[2,2]"]=>.....array(1
0b20 29 20 7b 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 31 31 29 0a 20 20 ).{.......[0]=>.......int(11)...
0b40 20 20 7d 0a 20 20 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 33 5d 22 5d 3d 3e 0a 20 20 20 ..}.....["sub_array[2,3]"]=>....
0b60 20 61 72 72 61 79 28 32 29 20 7b 0a 20 20 20 20 20 20 5b 30 5d 3d 3e 0a 20 20 20 20 20 20 69 6e .array(2).{.......[0]=>.......in
0b80 74 28 32 32 29 0a 20 20 20 20 20 20 5b 31 5d 3d 3e 0a 20 20 20 20 20 20 69 6e 74 28 2d 35 35 29 t(22).......[1]=>.......int(-55)
0ba0 0a 20 20 20 20 7d 0a 20 20 20 20 5b 22 73 75 62 5f 61 72 72 61 79 5b 32 2c 34 5d 22 5d 3d 3e 0a .....}.....["sub_array[2,4]"]=>.
0bc0 20 20 20 20 61 72 72 61 79 28 30 29 20 7b 0a 20 20 20 20 7d 0a 20 20 7d 0a 20 20 5b 22 61 72 72 ....array(0).{.....}...}...["arr
0be0 61 79 31 22 5d 3d 3e 0a 20 20 61 72 72 61 79 28 30 29 20 7b 0a 20 20 7d 0a 20 20 5b 22 61 62 63 ay1"]=>...array(0).{...}...["abc
0c00 64 00 61 62 63 64 00 61 62 63 64 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 31 34 29 20 22 61 62 d.abcd.abcd"]=>...string(14)."ab
0c20 63 64 00 61 62 63 64 00 61 62 63 64 22 0a 20 20 5b 22 61 62 63 64 22 5d 3d 3e 0a 20 20 73 74 72 cd.abcd.abcd"...["abcd"]=>...str
0c40 69 6e 67 28 34 29 20 22 61 62 63 64 22 0a 20 20 5b 22 61 62 22 5d 3d 3e 0a 20 20 73 74 72 69 6e ing(4)."abcd"...["ab"]=>...strin
0c60 67 28 32 29 20 22 61 62 22 0a 20 20 5b 22 54 72 75 65 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 g(2)."ab"...["True"]=>...string(
0c80 34 29 20 22 54 72 75 65 22 0a 20 20 5b 30 5d 3d 3e 0a 20 20 66 6c 6f 61 74 28 30 2e 30 30 31 29 4)."True"...[0]=>...float(0.001)
0ca0 0a 20 20 5b 22 2d 2e 39 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 33 29 20 22 2d 2e 39 22 0a 20 ...["-.9"]=>...string(3)."-.9"..
0cc0 20 5b 22 22 5d 3d 3e 0a 20 20 73 74 72 69 6e 67 28 30 29 20 22 22 0a 20 20 5b 2d 32 5d 3d 3e 0a .[""]=>...string(0).""...[-2]=>.
0ce0 20 20 66 6c 6f 61 74 28 2d 32 2e 39 38 39 38 39 29 0a 7d 0a 44 6f 6e 65 0a ..float(-2.98989).}.Done.