diff --git a/src/Collection.php b/src/Collection.php index 9d84e1a..6f5d5f1 100644 --- a/src/Collection.php +++ b/src/Collection.php @@ -526,7 +526,10 @@ public function order(string $field, string $order = 'asc') $fieldA = $a[$field] ?? null; $fieldB = $b[$field] ?? null; - return 'desc' == strtolower($order) ? intval($fieldB > $fieldA) : intval($fieldA > $fieldB); + if ($fieldA == $fieldB) return 0; + + // 可以使用 <=> 简化,但是需要 php7.4 + + return 'desc' == strtolower($order) ? intval($fieldB > $fieldA ? 1 : -1) : intval($fieldA > $fieldB ? 1 : -1); }); }