1--TEST-- 2Test krsort() function : usage variations - sort heredoc strings 3--FILE-- 4<?php 5/* Prototype : bool krsort ( array &$array [, int $sort_flags] ) 6 * Description: Sort an array by key in reverse order, maintaining key to data correlation 7 * Source code: ext/standard/array.c 8*/ 9 10/* 11 * testing krsort() by providing array of heredoc strings for $array argument with 12 * following flag values: 13 * 1.flag value as defualt 14 * 2.SORT_REGULAR - compare items normally 15 * 3.SORT_STRING - compare items as strings 16*/ 17 18echo "*** Testing krsort() : usage variations ***\n"; 19 20// Different heredoc strings to be sorted 21$simple_heredoc1 =<<<EOT 22Heredoc 23EOT; 24 25$simple_heredoc2 =<<<EOT 26HEREDOC 27EOT; 28 29$multiline_heredoc =<<<EOT 30heredoc string\twith!@# and 123 31Test this!!! 32EOT; 33 34$array = array ( 35 $simple_heredoc1 => "Heredoc", 36 $simple_heredoc2 => "HEREDOC", 37 $multiline_heredoc => "heredoc string\twith!@# and 123\nTest this!!!" 38); 39 40echo "\n-- Testing krsort() by supplying heredoc string array, 'flag' value is defualt --\n"; 41$temp_array = $array; 42var_dump(krsort($temp_array) ); // expecting : bool(true) 43var_dump($temp_array); 44 45echo "\n-- Testing krsort() by supplying heredoc string array, 'flag' = SORT_REGULAR --\n"; 46$temp_array = $array; 47var_dump(krsort($temp_array, SORT_REGULAR) ); // expecting : bool(true) 48var_dump($temp_array); 49 50echo "\n-- Testing krsort() by supplying heredoc string array, 'flag' = SORT_STRING --\n"; 51$temp_array = $array; 52var_dump(krsort($temp_array, SORT_STRING) ); // expecting : bool(true) 53var_dump($temp_array); 54 55echo "Done\n"; 56?> 57--EXPECT-- 58*** Testing krsort() : usage variations *** 59 60-- Testing krsort() by supplying heredoc string array, 'flag' value is defualt -- 61bool(true) 62array(3) { 63 ["heredoc string with!@# and 123 64Test this!!!"]=> 65 string(43) "heredoc string with!@# and 123 66Test this!!!" 67 ["Heredoc"]=> 68 string(7) "Heredoc" 69 ["HEREDOC"]=> 70 string(7) "HEREDOC" 71} 72 73-- Testing krsort() by supplying heredoc string array, 'flag' = SORT_REGULAR -- 74bool(true) 75array(3) { 76 ["heredoc string with!@# and 123 77Test this!!!"]=> 78 string(43) "heredoc string with!@# and 123 79Test this!!!" 80 ["Heredoc"]=> 81 string(7) "Heredoc" 82 ["HEREDOC"]=> 83 string(7) "HEREDOC" 84} 85 86-- Testing krsort() by supplying heredoc string array, 'flag' = SORT_STRING -- 87bool(true) 88array(3) { 89 ["heredoc string with!@# and 123 90Test this!!!"]=> 91 string(43) "heredoc string with!@# and 123 92Test this!!!" 93 ["Heredoc"]=> 94 string(7) "Heredoc" 95 ["HEREDOC"]=> 96 string(7) "HEREDOC" 97} 98Done 99