We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent e225f39 commit 195c896Copy full SHA for 195c896
1 file changed
src/Arr.php
@@ -883,8 +883,19 @@ public static function mergeRecursive(...$args): array
883
*/
884
public static function arrayEquals(array $a, array $b): bool
885
{
886
- return count($a) === count($b)
887
- && array_diff($a, $b) === array_diff($b, $a);
+ $a = array_map(static::serializeForCompare(...), $a);
+ $b = array_map(static::serializeForCompare(...), $b);
888
+
889
+ return array_count_values($a) === array_count_values($b);
890
+ }
891
892
+ private static function serializeForCompare(mixed $value): string
893
+ {
894
+ if (is_object($value)) {
895
+ return spl_object_hash($value);
896
897
898
+ return serialize($value);
899
}
900
901
/**
0 commit comments