Skip to content

Commit 195c896

Browse files
committed
misc updates
1 parent e225f39 commit 195c896

1 file changed

Lines changed: 13 additions & 2 deletions

File tree

src/Arr.php

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -883,8 +883,19 @@ public static function mergeRecursive(...$args): array
883883
*/
884884
public static function arrayEquals(array $a, array $b): bool
885885
{
886-
return count($a) === count($b)
887-
&& array_diff($a, $b) === array_diff($b, $a);
886+
$a = array_map(static::serializeForCompare(...), $a);
887+
$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);
888899
}
889900

890901
/**

0 commit comments

Comments
 (0)