diff options
author | Urban Müller | 2015-10-30 15:37:17 +0100 |
---|---|---|
committer | Urban Müller | 2015-10-30 15:39:23 +0100 |
commit | da71e326d6bbd7e531f0948cac99cf0c4d51ad6e (patch) | |
tree | ae5c0061e50e620d3171a4f2d95956bf43864586 | |
parent | d908cb0d4e147721970c7eff5bd24f112bdac4cd (diff) | |
download | itools-da71e326d6bbd7e531f0948cac99cf0c4d51ad6e.tar.gz itools-da71e326d6bbd7e531f0948cac99cf0c4d51ad6e.tar.bz2 itools-da71e326d6bbd7e531f0948cac99cf0c4d51ad6e.zip |
minimal it::sort
-rw-r--r-- | it.class | 9 | ||||
-rwxr-xr-x | tests/it.t | 4 |
2 files changed, 12 insertions, 1 deletions
@@ -1030,5 +1030,12 @@ static function json_decode($json) return ($data = json_decode($json)) === null && $json != 'null' ? it::error(array('title' => "invalid json", 'body' => $json)) : $data; } +static function sort($array, $mode = "") +{ + $func = it::replace(array('n' => ""), count_chars($mode, 3)) . "sort"; # count_chars sorts flags + $func($array, it::match('n', $mode) ? SORT_NUMERIC : 0); + + return $array; +} + } -?> @@ -393,3 +393,7 @@ is(it::any2utf8(array(utf8_decode('Müller') => utf8_decode('Müller'))), array( foreach (array($dummy, false, true, null, 1, "a", "Ä", "/", array()) as $var) is(it::json_decode(it::json_encode($var)), $var); + +is(it::sort(array("2!","19!","1!")), array("1!", "19!", "2!")); +is(it::sort(array("2!","19!","1!"), "r"), array("2!", "19!", "1!")); +is(it::sort(array("2!","19!","1!"), "rn"), array("19!", "2!", "1!")); |