mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
ext/standard: Split sort tests that contain escape sequences
This commit is contained in:
parent
d8a63a38c6
commit
f011684206
12 changed files with 790 additions and 1074 deletions
|
@ -2,235 +2,120 @@
|
||||||
Test arsort() function : usage variations - sort strings
|
Test arsort() function : usage variations - sort strings
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* testing arsort() by providing different string arrays for $array argument with following flag values
|
|
||||||
* flag value as default
|
|
||||||
* SORT_REGULAR - compare items normally
|
|
||||||
* SORT_STRING - compare items as strings
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing arsort() : usage variations ***\n";
|
$array = [
|
||||||
|
"lemoN" => "lemoN",
|
||||||
|
"Orange" => "Orange",
|
||||||
|
"banana" => "banana",
|
||||||
|
"apple" => "apple",
|
||||||
|
"Test" => "Test",
|
||||||
|
"TTTT" => "TTTT",
|
||||||
|
"ttt" => "ttt",
|
||||||
|
"ww" => "ww",
|
||||||
|
"x" => "x",
|
||||||
|
"X" => "X",
|
||||||
|
"oraNGe" => "oraNGe",
|
||||||
|
"BANANA" => "BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// group of escape sequences
|
$temp_array = $array;
|
||||||
array ("null"=> null, "NULL" => NULL, "\a" => "\a", "\cx" => "\cx", "\e" => "\e",
|
var_dump(arsort($temp_array)); // expecting : bool(true)
|
||||||
"\f" => "\f", "\n" =>"\n", "\r" => "\r", "\t" => "\t", "\xhh" => "\xhh",
|
var_dump($temp_array);
|
||||||
"\ddd" => "\ddd", "\v" => "\v"
|
|
||||||
),
|
|
||||||
|
|
||||||
// array contains combination of capital/small letters
|
echo "SORT_REGULAR\n";
|
||||||
array ('l' => "lemoN", 'O' => "Orange", 'b' => "banana", 'a' => "apple", 'Te' => "Test",
|
$temp_array = $array;
|
||||||
'T' => "TTTT", 't' => "ttt", 'w' => "ww", 'x' => "x", 'X' => "X", 'o' => "oraNGe",
|
var_dump(arsort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
'B' => "BANANA"
|
var_dump($temp_array);
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(arsort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
echo "\n-- Testing arsort() by supplying various string arrays --\n";
|
|
||||||
|
|
||||||
// loop through to test arsort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With default sort_flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(arsort($temp_array) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and setting all possible flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort_flag = $key -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(arsort($temp_array, $flag) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done\n";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing arsort() : usage variations ***
|
Default flag
|
||||||
|
|
||||||
-- Testing arsort() by supplying various string arrays --
|
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With default sort_flag -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["null"]=>
|
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort_flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["null"]=>
|
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort_flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["null"]=>
|
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With default sort_flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["B"]=>
|
["BANANA"]=>
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
}
|
}
|
||||||
- Sort_flag = SORT_REGULAR -
|
SORT_REGULAR
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["B"]=>
|
["BANANA"]=>
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
}
|
}
|
||||||
- Sort_flag = SORT_STRING -
|
SORT_STRING
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["B"]=>
|
["BANANA"]=>
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
}
|
}
|
||||||
Done
|
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test arsort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\a" => "\a",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\v" => "\v",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\t" => "\t",
|
||||||
|
null => null,
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null => null,
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\t" => "\t",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\v" => "\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(arsort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(arsort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(arsort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
|
@ -2,235 +2,120 @@
|
||||||
Test asort() function : usage variations - sort strings
|
Test asort() function : usage variations - sort strings
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* testing asort() by providing different string arrays for $array argument with following flag values
|
|
||||||
* flag value as default
|
|
||||||
* SORT_REGULAR - compare items normally
|
|
||||||
* SORT_STRING - compare items as strings
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing asort() : usage variations ***\n";
|
$array = [
|
||||||
|
"lemoN" => "lemoN",
|
||||||
|
"Orange" => "Orange",
|
||||||
|
"banana" => "banana",
|
||||||
|
"apple" => "apple",
|
||||||
|
"Test" => "Test",
|
||||||
|
"TTTT" => "TTTT",
|
||||||
|
"ttt" => "ttt",
|
||||||
|
"ww" => "ww",
|
||||||
|
"x" => "x",
|
||||||
|
"X" => "X",
|
||||||
|
"oraNGe" => "oraNGe",
|
||||||
|
"BANANA" => "BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// group of escape sequences
|
$temp_array = $array;
|
||||||
array ("null"=> null, "NULL" => NULL, "\a" => "\a", "\cx" => "\cx", "\e" => "\e",
|
var_dump(asort($temp_array)); // expecting : bool(true)
|
||||||
"\f" => "\f", "\n" =>"\n", "\r" => "\r", "\t" => "\t", "\xhh" => "\xhh",
|
var_dump($temp_array);
|
||||||
"\ddd" => "\ddd", "\v" => "\v"
|
|
||||||
),
|
|
||||||
|
|
||||||
// array contains combination of capital/small letters
|
echo "SORT_REGULAR\n";
|
||||||
array ('l' => "lemoN", 'O' => "Orange", 'b' => "banana", 'a' => "apple", 'Te' => "Test",
|
$temp_array = $array;
|
||||||
'T' => "TTTT", 't' => "ttt", 'w' => "ww", 'x' => "x", 'X' => "X", 'o' => "oraNGe",
|
var_dump(asort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
'B' => "BANANA"
|
var_dump($temp_array);
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(asort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
echo "\n-- Testing asort() by supplying various string arrays --\n";
|
|
||||||
|
|
||||||
// loop through to test asort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With default sort_flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(asort($temp_array) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and setting all possible flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort_flag = $key -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(asort($temp_array, $flag) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done\n";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing asort() : usage variations ***
|
Default flag
|
||||||
|
|
||||||
-- Testing asort() by supplying various string arrays --
|
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With default sort_flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["null"]=>
|
["BANANA"]=>
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort_flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["null"]=>
|
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort_flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["null"]=>
|
|
||||||
NULL
|
|
||||||
["NULL"]=>
|
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With default sort_flag -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort_flag = SORT_REGULAR -
|
SORT_REGULAR
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["B"]=>
|
["BANANA"]=>
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort_flag = SORT_STRING -
|
SORT_STRING
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
["B"]=>
|
["BANANA"]=>
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["O"]=>
|
["Orange"]=>
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["T"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["Te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
["a"]=>
|
["apple"]=>
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["b"]=>
|
["banana"]=>
|
||||||
string(6) "banana"
|
string(6) "banana"
|
||||||
["l"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["o"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["t"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["w"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
Done
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test asort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
null => null,
|
||||||
|
"\t" => "\t",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\v" => "\v",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null => null,
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\t" => "\t",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\v" => "\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(asort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(asort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(asort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
|
@ -2,224 +2,120 @@
|
||||||
Test krsort() function : usage variations - sort strings
|
Test krsort() function : usage variations - sort strings
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* testing krsort() by providing array of string values for $array argument with
|
|
||||||
* following flag values:
|
|
||||||
* 1.flag value as default
|
|
||||||
* 2.SORT_REGULAR - compare items normally
|
|
||||||
* 3.SORT_STRING - compare items as strings
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing krsort() : usage variations ***\n";
|
$array = [
|
||||||
|
"lemoN" => "lemoN",
|
||||||
|
"Orange" => "Orange",
|
||||||
|
"banana" => "banana",
|
||||||
|
"apple" => "apple",
|
||||||
|
"Test" => "Test",
|
||||||
|
"TTTT" => "TTTT",
|
||||||
|
"ttt" => "ttt",
|
||||||
|
"ww" => "ww",
|
||||||
|
"x" => "x",
|
||||||
|
"X" => "X",
|
||||||
|
"oraNGe" => "oraNGe",
|
||||||
|
"BANANA" => "BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// diff. escape sequence chars with key values
|
$temp_array = $array;
|
||||||
array ( null => null, NULL => NULL, "\a" => "\a", "\cx" => "\cx", "\e" => "\e",
|
var_dump(ksort($temp_array)); // expecting : bool(true)
|
||||||
"\f" => "\f", "\n" =>"\n", "\r" => "\r", "\t" => "\t", "\xhh" => "\xhh",
|
var_dump($temp_array);
|
||||||
"\ddd" => "\ddd", "\v" => "\v"
|
|
||||||
),
|
|
||||||
|
|
||||||
// array containing different strings with key values
|
echo "SORT_REGULAR\n";
|
||||||
array ( 'Lemon' => "lemoN", 'o' => "Orange", 'B' => "banana", 'Apple' => "apple", 'te' => "Test",
|
$temp_array = $array;
|
||||||
't' => "TTTT", 'T' => "ttt", 'W' => "ww", 'X' => "x", 'x' => "X", 'O' => "oraNGe",
|
var_dump(ksort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
'B' => "BANANA"
|
var_dump($temp_array);
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(ksort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
echo "\n-- Testing krsort() by supplying various string arrays --\n";
|
|
||||||
|
|
||||||
// loop through to test krsort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With default sort flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(krsort($temp_array) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and call krsort() with all possible sort flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort flag = $key -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(krsort($temp_array, $flag) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done\n";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing krsort() : usage variations ***
|
Default flag
|
||||||
|
|
||||||
-- Testing krsort() by supplying various string arrays --
|
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With default sort flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(11) {
|
array(12) {
|
||||||
["\xhh"]=>
|
["BANANA"]=>
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
[""]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
[""]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
[""]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With default sort flag -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["x"]=>
|
|
||||||
string(1) "X"
|
|
||||||
["te"]=>
|
|
||||||
string(4) "Test"
|
|
||||||
["t"]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
["o"]=>
|
|
||||||
string(6) "Orange"
|
|
||||||
["X"]=>
|
|
||||||
string(1) "x"
|
|
||||||
["W"]=>
|
|
||||||
string(2) "ww"
|
|
||||||
["T"]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
["O"]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
["Lemon"]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["Apple"]=>
|
["Orange"]=>
|
||||||
string(5) "apple"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["x"]=>
|
|
||||||
string(1) "X"
|
|
||||||
["te"]=>
|
|
||||||
string(4) "Test"
|
|
||||||
["t"]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
["o"]=>
|
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["X"]=>
|
["TTTT"]=>
|
||||||
string(1) "x"
|
|
||||||
["W"]=>
|
|
||||||
string(2) "ww"
|
|
||||||
["T"]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
["O"]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
["Lemon"]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
|
||||||
["Apple"]=>
|
|
||||||
string(5) "apple"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["x"]=>
|
|
||||||
string(1) "X"
|
|
||||||
["te"]=>
|
|
||||||
string(4) "Test"
|
|
||||||
["t"]=>
|
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["o"]=>
|
["Test"]=>
|
||||||
string(6) "Orange"
|
string(4) "Test"
|
||||||
["X"]=>
|
["X"]=>
|
||||||
string(1) "x"
|
string(1) "X"
|
||||||
["W"]=>
|
["apple"]=>
|
||||||
string(2) "ww"
|
|
||||||
["T"]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
["O"]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
["Lemon"]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
|
||||||
["Apple"]=>
|
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
|
["banana"]=>
|
||||||
|
string(6) "banana"
|
||||||
|
["lemoN"]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
["oraNGe"]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
["ttt"]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
["ww"]=>
|
||||||
|
string(2) "ww"
|
||||||
|
["x"]=>
|
||||||
|
string(1) "x"
|
||||||
|
}
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
array(12) {
|
||||||
|
["BANANA"]=>
|
||||||
|
string(6) "BANANA"
|
||||||
|
["Orange"]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
["TTTT"]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
["Test"]=>
|
||||||
|
string(4) "Test"
|
||||||
|
["X"]=>
|
||||||
|
string(1) "X"
|
||||||
|
["apple"]=>
|
||||||
|
string(5) "apple"
|
||||||
|
["banana"]=>
|
||||||
|
string(6) "banana"
|
||||||
|
["lemoN"]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
["oraNGe"]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
["ttt"]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
["ww"]=>
|
||||||
|
string(2) "ww"
|
||||||
|
["x"]=>
|
||||||
|
string(1) "x"
|
||||||
|
}
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
array(12) {
|
||||||
|
["BANANA"]=>
|
||||||
|
string(6) "BANANA"
|
||||||
|
["Orange"]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
["TTTT"]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
["Test"]=>
|
||||||
|
string(4) "Test"
|
||||||
|
["X"]=>
|
||||||
|
string(1) "X"
|
||||||
|
["apple"]=>
|
||||||
|
string(5) "apple"
|
||||||
|
["banana"]=>
|
||||||
|
string(6) "banana"
|
||||||
|
["lemoN"]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
["oraNGe"]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
["ttt"]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
["ww"]=>
|
||||||
|
string(2) "ww"
|
||||||
|
["x"]=>
|
||||||
|
string(1) "x"
|
||||||
}
|
}
|
||||||
Done
|
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test krsort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\a" => "\a",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\v" => "\v",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\t" => "\t",
|
||||||
|
null => null,
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null => null,
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\t" => "\t",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\v" => "\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(krsort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(krsort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(krsort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
|
@ -2,224 +2,120 @@
|
||||||
Test ksort() function : usage variations - sort strings
|
Test ksort() function : usage variations - sort strings
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* testing ksort() by providing array of string values for $array argument with
|
|
||||||
* following flag values:
|
|
||||||
* 1.flag value as default
|
|
||||||
* 2.SORT_REGULAR - compare items normally
|
|
||||||
* 3.SORT_STRING - compare items as strings
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing ksort() : usage variations ***\n";
|
$array = [
|
||||||
|
"lemoN" => "lemoN",
|
||||||
|
"Orange" => "Orange",
|
||||||
|
"banana" => "banana",
|
||||||
|
"apple" => "apple",
|
||||||
|
"Test" => "Test",
|
||||||
|
"TTTT" => "TTTT",
|
||||||
|
"ttt" => "ttt",
|
||||||
|
"ww" => "ww",
|
||||||
|
"x" => "x",
|
||||||
|
"X" => "X",
|
||||||
|
"oraNGe" => "oraNGe",
|
||||||
|
"BANANA" => "BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// diff. escape sequence chars with key values
|
$temp_array = $array;
|
||||||
array ( null => null, NULL => NULL, "\a" => "\a", "\cx" => "\cx", "\e" => "\e",
|
var_dump(ksort($temp_array)); // expecting : bool(true)
|
||||||
"\f" => "\f", "\n" =>"\n", "\r" => "\r", "\t" => "\t", "\xhh" => "\xhh",
|
var_dump($temp_array);
|
||||||
"\ddd" => "\ddd", "\v" => "\v"
|
|
||||||
),
|
|
||||||
|
|
||||||
// array containing different strings with key values
|
echo "SORT_REGULAR\n";
|
||||||
array ( 'Lemon' => "lemoN", 'o' => "Orange", 'B' => "banana", 'Apple' => "apple", 'te' => "Test",
|
$temp_array = $array;
|
||||||
't' => "TTTT", 'T' => "ttt", 'W' => "ww", 'X' => "x", 'x' => "X", 'O' => "oraNGe",
|
var_dump(ksort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
'B' => "BANANA"
|
var_dump($temp_array);
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(ksort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
echo "\n-- Testing ksort() by supplying various string arrays --\n";
|
|
||||||
|
|
||||||
// loop through to test ksort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With default sort flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(ksort($temp_array) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and call ksort() with all possible sort flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort flag = $key -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(ksort($temp_array, $flag) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done\n";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing ksort() : usage variations ***
|
Default flag
|
||||||
|
|
||||||
-- Testing ksort() by supplying various string arrays --
|
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With default sort flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(11) {
|
array(12) {
|
||||||
[""]=>
|
["BANANA"]=>
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
[""]=>
|
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
[""]=>
|
|
||||||
NULL
|
|
||||||
[" "]=>
|
|
||||||
string(1) " "
|
|
||||||
["
|
|
||||||
"]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["
"]=>
|
|
||||||
string(1) "
"
|
|
||||||
[""]=>
|
|
||||||
string(1) ""
|
|
||||||
["\a"]=>
|
|
||||||
string(2) "\a"
|
|
||||||
["\cx"]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
["\ddd"]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
["\xhh"]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With default sort flag -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["Apple"]=>
|
|
||||||
string(5) "apple"
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["Lemon"]=>
|
["Orange"]=>
|
||||||
string(5) "lemoN"
|
|
||||||
["O"]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
["T"]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
["W"]=>
|
|
||||||
string(2) "ww"
|
|
||||||
["X"]=>
|
|
||||||
string(1) "x"
|
|
||||||
["o"]=>
|
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["t"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["x"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
}
|
["apple"]=>
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
["Apple"]=>
|
|
||||||
string(5) "apple"
|
string(5) "apple"
|
||||||
["B"]=>
|
["banana"]=>
|
||||||
string(6) "BANANA"
|
string(6) "banana"
|
||||||
["Lemon"]=>
|
["lemoN"]=>
|
||||||
string(5) "lemoN"
|
string(5) "lemoN"
|
||||||
["O"]=>
|
["oraNGe"]=>
|
||||||
string(6) "oraNGe"
|
string(6) "oraNGe"
|
||||||
["T"]=>
|
["ttt"]=>
|
||||||
string(3) "ttt"
|
string(3) "ttt"
|
||||||
["W"]=>
|
["ww"]=>
|
||||||
string(2) "ww"
|
string(2) "ww"
|
||||||
["X"]=>
|
|
||||||
string(1) "x"
|
|
||||||
["o"]=>
|
|
||||||
string(6) "Orange"
|
|
||||||
["t"]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
["te"]=>
|
|
||||||
string(4) "Test"
|
|
||||||
["x"]=>
|
["x"]=>
|
||||||
string(1) "X"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort flag = SORT_STRING -
|
SORT_REGULAR
|
||||||
bool(true)
|
bool(true)
|
||||||
array(11) {
|
array(12) {
|
||||||
["Apple"]=>
|
["BANANA"]=>
|
||||||
string(5) "apple"
|
|
||||||
["B"]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
["Lemon"]=>
|
["Orange"]=>
|
||||||
string(5) "lemoN"
|
|
||||||
["O"]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
["T"]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
["W"]=>
|
|
||||||
string(2) "ww"
|
|
||||||
["X"]=>
|
|
||||||
string(1) "x"
|
|
||||||
["o"]=>
|
|
||||||
string(6) "Orange"
|
string(6) "Orange"
|
||||||
["t"]=>
|
["TTTT"]=>
|
||||||
string(4) "TTTT"
|
string(4) "TTTT"
|
||||||
["te"]=>
|
["Test"]=>
|
||||||
string(4) "Test"
|
string(4) "Test"
|
||||||
["x"]=>
|
["X"]=>
|
||||||
string(1) "X"
|
string(1) "X"
|
||||||
|
["apple"]=>
|
||||||
|
string(5) "apple"
|
||||||
|
["banana"]=>
|
||||||
|
string(6) "banana"
|
||||||
|
["lemoN"]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
["oraNGe"]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
["ttt"]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
["ww"]=>
|
||||||
|
string(2) "ww"
|
||||||
|
["x"]=>
|
||||||
|
string(1) "x"
|
||||||
|
}
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
array(12) {
|
||||||
|
["BANANA"]=>
|
||||||
|
string(6) "BANANA"
|
||||||
|
["Orange"]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
["TTTT"]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
["Test"]=>
|
||||||
|
string(4) "Test"
|
||||||
|
["X"]=>
|
||||||
|
string(1) "X"
|
||||||
|
["apple"]=>
|
||||||
|
string(5) "apple"
|
||||||
|
["banana"]=>
|
||||||
|
string(6) "banana"
|
||||||
|
["lemoN"]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
["oraNGe"]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
["ttt"]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
["ww"]=>
|
||||||
|
string(2) "ww"
|
||||||
|
["x"]=>
|
||||||
|
string(1) "x"
|
||||||
}
|
}
|
||||||
Done
|
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test ksort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
null => null,
|
||||||
|
"\t" => "\t",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\v" => "\v",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null => null,
|
||||||
|
"\a" => "\a",
|
||||||
|
"\cx" => "\cx",
|
||||||
|
"\e" => "\e",
|
||||||
|
"\f" => "\f",
|
||||||
|
"\n" => "\n",
|
||||||
|
"\r" => "\r",
|
||||||
|
"\t" => "\t",
|
||||||
|
"\xhh" => "\xhh",
|
||||||
|
"\ddd" => "\ddd",
|
||||||
|
"\v" => "\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(ksort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(ksort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(ksort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
|
@ -2,214 +2,120 @@
|
||||||
Test rsort() function : usage variations - String values
|
Test rsort() function : usage variations - String values
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* Pass arrays containing different string data to rsort() to test behaviour
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing rsort() : variation ***\n";
|
$array = [
|
||||||
|
"lemoN",
|
||||||
|
"Orange",
|
||||||
|
"banana",
|
||||||
|
"apple",
|
||||||
|
"Test",
|
||||||
|
"TTTT",
|
||||||
|
"ttt",
|
||||||
|
"ww",
|
||||||
|
"x",
|
||||||
|
"X",
|
||||||
|
"oraNGe",
|
||||||
|
"BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// group of escape sequences
|
$temp_array = $array;
|
||||||
array(null, NULL, "\a", "\cx", "\e", "\f", "\n", "\t", "\xhh", "\ddd", "\v"),
|
var_dump(sort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
// array contains combination of capital/small letters
|
echo "SORT_REGULAR\n";
|
||||||
array("lemoN", "Orange", "banana", "apple", "Test", "TTTT", "ttt", "ww", "x", "X", "oraNGe", "BANANA")
|
$temp_array = $array;
|
||||||
);
|
var_dump(sort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(sort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
// loop through to test rsort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With Default sort flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(rsort($temp_array) );
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and setting all possible flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort flag = $key -\n";
|
|
||||||
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(rsort($temp_array, $flag) );
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing rsort() : variation ***
|
Default flag
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With Default sort flag -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
[0]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
[1]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[2]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[3]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) ""
|
|
||||||
[7]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[8]=>
|
|
||||||
string(1) " "
|
|
||||||
[9]=>
|
|
||||||
NULL
|
|
||||||
[10]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
[0]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
[1]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[2]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[3]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) ""
|
|
||||||
[7]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[8]=>
|
|
||||||
string(1) " "
|
|
||||||
[9]=>
|
|
||||||
NULL
|
|
||||||
[10]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(11) {
|
|
||||||
[0]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
[1]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[2]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[3]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) ""
|
|
||||||
[7]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[8]=>
|
|
||||||
string(1) " "
|
|
||||||
[9]=>
|
|
||||||
NULL
|
|
||||||
[10]=>
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With Default sort flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
string(1) "x"
|
|
||||||
[1]=>
|
|
||||||
string(2) "ww"
|
|
||||||
[2]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
[3]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
[4]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
[5]=>
|
|
||||||
string(6) "banana"
|
|
||||||
[6]=>
|
|
||||||
string(5) "apple"
|
|
||||||
[7]=>
|
|
||||||
string(1) "X"
|
|
||||||
[8]=>
|
|
||||||
string(4) "Test"
|
|
||||||
[9]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
[10]=>
|
|
||||||
string(6) "Orange"
|
|
||||||
[11]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
|
[1]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
[2]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
[3]=>
|
||||||
|
string(4) "Test"
|
||||||
|
[4]=>
|
||||||
|
string(1) "X"
|
||||||
|
[5]=>
|
||||||
|
string(5) "apple"
|
||||||
|
[6]=>
|
||||||
|
string(6) "banana"
|
||||||
|
[7]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
[8]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
[9]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
[10]=>
|
||||||
|
string(2) "ww"
|
||||||
|
[11]=>
|
||||||
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort flag = SORT_REGULAR -
|
SORT_REGULAR
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
string(1) "x"
|
|
||||||
[1]=>
|
|
||||||
string(2) "ww"
|
|
||||||
[2]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
[3]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
[4]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
[5]=>
|
|
||||||
string(6) "banana"
|
|
||||||
[6]=>
|
|
||||||
string(5) "apple"
|
|
||||||
[7]=>
|
|
||||||
string(1) "X"
|
|
||||||
[8]=>
|
|
||||||
string(4) "Test"
|
|
||||||
[9]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
[10]=>
|
|
||||||
string(6) "Orange"
|
|
||||||
[11]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
|
[1]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
[2]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
[3]=>
|
||||||
|
string(4) "Test"
|
||||||
|
[4]=>
|
||||||
|
string(1) "X"
|
||||||
|
[5]=>
|
||||||
|
string(5) "apple"
|
||||||
|
[6]=>
|
||||||
|
string(6) "banana"
|
||||||
|
[7]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
[8]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
[9]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
[10]=>
|
||||||
|
string(2) "ww"
|
||||||
|
[11]=>
|
||||||
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort flag = SORT_STRING -
|
SORT_STRING
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
string(1) "x"
|
|
||||||
[1]=>
|
|
||||||
string(2) "ww"
|
|
||||||
[2]=>
|
|
||||||
string(3) "ttt"
|
|
||||||
[3]=>
|
|
||||||
string(6) "oraNGe"
|
|
||||||
[4]=>
|
|
||||||
string(5) "lemoN"
|
|
||||||
[5]=>
|
|
||||||
string(6) "banana"
|
|
||||||
[6]=>
|
|
||||||
string(5) "apple"
|
|
||||||
[7]=>
|
|
||||||
string(1) "X"
|
|
||||||
[8]=>
|
|
||||||
string(4) "Test"
|
|
||||||
[9]=>
|
|
||||||
string(4) "TTTT"
|
|
||||||
[10]=>
|
|
||||||
string(6) "Orange"
|
|
||||||
[11]=>
|
|
||||||
string(6) "BANANA"
|
string(6) "BANANA"
|
||||||
|
[1]=>
|
||||||
|
string(6) "Orange"
|
||||||
|
[2]=>
|
||||||
|
string(4) "TTTT"
|
||||||
|
[3]=>
|
||||||
|
string(4) "Test"
|
||||||
|
[4]=>
|
||||||
|
string(1) "X"
|
||||||
|
[5]=>
|
||||||
|
string(5) "apple"
|
||||||
|
[6]=>
|
||||||
|
string(6) "banana"
|
||||||
|
[7]=>
|
||||||
|
string(5) "lemoN"
|
||||||
|
[8]=>
|
||||||
|
string(6) "oraNGe"
|
||||||
|
[9]=>
|
||||||
|
string(3) "ttt"
|
||||||
|
[10]=>
|
||||||
|
string(2) "ww"
|
||||||
|
[11]=>
|
||||||
|
string(1) "x"
|
||||||
}
|
}
|
||||||
Done
|
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test rsort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
"\xhh",
|
||||||
|
"\ddd",
|
||||||
|
"\cx",
|
||||||
|
"\a",
|
||||||
|
"\e",
|
||||||
|
"\r",
|
||||||
|
"\f",
|
||||||
|
"\v",
|
||||||
|
"\n",
|
||||||
|
"\t",
|
||||||
|
null,
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null,
|
||||||
|
"\a",
|
||||||
|
"\cx",
|
||||||
|
"\e",
|
||||||
|
"\f",
|
||||||
|
"\n",
|
||||||
|
"\r",
|
||||||
|
"\t",
|
||||||
|
"\xhh",
|
||||||
|
"\ddd",
|
||||||
|
"\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(rsort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(rsort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(rsort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
|
@ -2,145 +2,40 @@
|
||||||
Test sort() function : usage variations - sort strings
|
Test sort() function : usage variations - sort strings
|
||||||
--FILE--
|
--FILE--
|
||||||
<?php
|
<?php
|
||||||
/*
|
|
||||||
* testing sort() by providing different string arrays for $array argument with following flag values
|
|
||||||
* flag value as default
|
|
||||||
* SORT_REGULAR - compare items normally
|
|
||||||
* SORT_STRING - compare items as strings
|
|
||||||
*/
|
|
||||||
|
|
||||||
echo "*** Testing sort() : usage variations ***\n";
|
$array = [
|
||||||
|
"lemoN",
|
||||||
|
"Orange",
|
||||||
|
"banana",
|
||||||
|
"apple",
|
||||||
|
"Test",
|
||||||
|
"TTTT",
|
||||||
|
"ttt",
|
||||||
|
"ww",
|
||||||
|
"x",
|
||||||
|
"X",
|
||||||
|
"oraNGe",
|
||||||
|
"BANANA",
|
||||||
|
];
|
||||||
|
|
||||||
$various_arrays = array (
|
echo "Default flag\n";
|
||||||
// group of escape sequences
|
$temp_array = $array;
|
||||||
array(null, NULL, "\a", "\cx", "\e", "\f", "\n", "\r", "\t", "\xhh", "\ddd", "\v"),
|
var_dump(sort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
// array contains combination of capital/small letters
|
echo "SORT_REGULAR\n";
|
||||||
array("lemoN", "Orange", "banana", "apple", "Test", "TTTT", "ttt", "ww", "x", "X", "oraNGe", "BANANA")
|
$temp_array = $array;
|
||||||
);
|
var_dump(sort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING);
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(sort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array);
|
||||||
|
|
||||||
$count = 1;
|
|
||||||
echo "\n-- Testing sort() by supplying various string arrays --\n";
|
|
||||||
|
|
||||||
// loop through to test sort() with different arrays
|
|
||||||
foreach ($various_arrays as $array) {
|
|
||||||
echo "\n-- Iteration $count --\n";
|
|
||||||
|
|
||||||
echo "- With Default sort flag -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(sort($temp_array) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
|
|
||||||
// loop through $flags array and setting all possible flag values
|
|
||||||
foreach($flags as $key => $flag){
|
|
||||||
echo "- Sort flag = $key -\n";
|
|
||||||
$temp_array = $array;
|
|
||||||
var_dump(sort($temp_array, $flag) ); // expecting : bool(true)
|
|
||||||
var_dump($temp_array);
|
|
||||||
}
|
|
||||||
$count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "Done\n";
|
|
||||||
?>
|
?>
|
||||||
--EXPECT--
|
--EXPECT--
|
||||||
*** Testing sort() : usage variations ***
|
Default flag
|
||||||
|
|
||||||
-- Testing sort() by supplying various string arrays --
|
|
||||||
|
|
||||||
-- Iteration 1 --
|
|
||||||
- With Default sort flag -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
[0]=>
|
|
||||||
NULL
|
|
||||||
[1]=>
|
|
||||||
NULL
|
|
||||||
[2]=>
|
|
||||||
string(1) " "
|
|
||||||
[3]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) "
"
|
|
||||||
[7]=>
|
|
||||||
string(1) ""
|
|
||||||
[8]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[9]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[10]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[11]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_REGULAR -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
[0]=>
|
|
||||||
NULL
|
|
||||||
[1]=>
|
|
||||||
NULL
|
|
||||||
[2]=>
|
|
||||||
string(1) " "
|
|
||||||
[3]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) "
"
|
|
||||||
[7]=>
|
|
||||||
string(1) ""
|
|
||||||
[8]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[9]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[10]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[11]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
- Sort flag = SORT_STRING -
|
|
||||||
bool(true)
|
|
||||||
array(12) {
|
|
||||||
[0]=>
|
|
||||||
NULL
|
|
||||||
[1]=>
|
|
||||||
NULL
|
|
||||||
[2]=>
|
|
||||||
string(1) " "
|
|
||||||
[3]=>
|
|
||||||
string(1) "
|
|
||||||
"
|
|
||||||
[4]=>
|
|
||||||
string(1) ""
|
|
||||||
[5]=>
|
|
||||||
string(1) ""
|
|
||||||
[6]=>
|
|
||||||
string(1) "
"
|
|
||||||
[7]=>
|
|
||||||
string(1) ""
|
|
||||||
[8]=>
|
|
||||||
string(2) "\a"
|
|
||||||
[9]=>
|
|
||||||
string(3) "\cx"
|
|
||||||
[10]=>
|
|
||||||
string(4) "\ddd"
|
|
||||||
[11]=>
|
|
||||||
string(4) "\xhh"
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Iteration 2 --
|
|
||||||
- With Default sort flag -
|
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
|
@ -168,7 +63,7 @@ array(12) {
|
||||||
[11]=>
|
[11]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort flag = SORT_REGULAR -
|
SORT_REGULAR
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
|
@ -196,7 +91,7 @@ array(12) {
|
||||||
[11]=>
|
[11]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
- Sort flag = SORT_STRING -
|
SORT_STRING
|
||||||
bool(true)
|
bool(true)
|
||||||
array(12) {
|
array(12) {
|
||||||
[0]=>
|
[0]=>
|
||||||
|
@ -224,4 +119,3 @@ array(12) {
|
||||||
[11]=>
|
[11]=>
|
||||||
string(1) "x"
|
string(1) "x"
|
||||||
}
|
}
|
||||||
Done
|
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
--TEST--
|
||||||
|
Test sort() function: sorting escape sequences
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
const EXPECTED_RESULT = [
|
||||||
|
null,
|
||||||
|
"\t",
|
||||||
|
"\n",
|
||||||
|
"\v",
|
||||||
|
"\f",
|
||||||
|
"\r",
|
||||||
|
"\e",
|
||||||
|
"\a",
|
||||||
|
"\cx",
|
||||||
|
"\ddd",
|
||||||
|
"\xhh",
|
||||||
|
];
|
||||||
|
|
||||||
|
$array = [
|
||||||
|
null,
|
||||||
|
"\a",
|
||||||
|
"\cx",
|
||||||
|
"\e",
|
||||||
|
"\f",
|
||||||
|
"\n",
|
||||||
|
"\r",
|
||||||
|
"\t",
|
||||||
|
"\xhh",
|
||||||
|
"\ddd",
|
||||||
|
"\v",
|
||||||
|
];
|
||||||
|
|
||||||
|
echo "Default flag\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(sort($temp_array)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_REGULAR\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(sort($temp_array, SORT_REGULAR)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
echo "SORT_STRING\n";
|
||||||
|
$temp_array = $array;
|
||||||
|
var_dump(sort($temp_array, SORT_STRING)); // expecting : bool(true)
|
||||||
|
var_dump($temp_array === EXPECTED_RESULT);
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
Default flag
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_REGULAR
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
||||||
|
SORT_STRING
|
||||||
|
bool(true)
|
||||||
|
bool(true)
|
Loading…
Add table
Add a link
Reference in a new issue