now compatible with old sorting values

This commit is contained in:
Susann Sgorzaly
2018-02-23 08:11:56 +01:00
parent 958af1027e
commit cf91bf40ff
3 changed files with 31 additions and 9 deletions

View File

@@ -739,7 +739,8 @@ class Csv {
$this->titles = $head;
if (!empty($this->sort_by)) {
$this->sort_reverse ? krsort($rows, $this->sort_type) : ksort($rows, $this->sort_type);
$sort_type = SortEnum::getSorting($this->sort_type);
$this->sort_reverse ? krsort($rows, $sort_type) : ksort($rows, $sort_type);
if ($this->offset !== null || $this->limit !== null) {
$rows = array_slice($rows, ($this->offset === null ? 0 : $this->offset), $this->limit, true);

View File

@@ -5,9 +5,24 @@ namespace ParseCsv\enums;
class SortEnum extends AbstractEnum {
const __DEFAULT = self::SORT_TYPE_REGULAR;
const SORT_TYPE_REGULAR = SORT_REGULAR;
const SORT_TYPE_REGULAR = 'regular';
const SORT_TYPE_NUMERIC = SORT_NUMERIC;
const SORT_TYPE_NUMERIC = 'numeric';
const SORT_TYPE_STRING = 'string';
private static $sorting = array(
self::SORT_TYPE_REGULAR => SORT_REGULAR,
self::SORT_TYPE_STRING => SORT_STRING,
self::SORT_TYPE_NUMERIC => SORT_NUMERIC
);
public static function getSorting($type){
if (array_key_exists($type, self::$sorting)){
return self::$sorting[$type];
}
return self::$sorting[self::__DEFAULT];
}
const SORT_TYPE_STRING = SORT_STRING;
}