<?php $arr = $this->all();
uasort($arr, function ($a, $b) use ($sorts) {
foreach ($sorts as $sort) {
$bits = explode(':', $sort);
$sort_by = $bits[0];
$sort_dir = array_get($bits, 1);
[$one, $two] = $this->getSortableValues($sort_by, $a, $b);
$result = Compare::values($one, $two);
if ($result !== 0) {
return ($sort_dir === 'desc') ? $result * -1 : $result;
}
}
return 0;
});
return new static($arr);
}