$left * @param array $right */ private static function isArrayEqual(array $left, array $right): bool { if (count($left) !== count($right)) { return false; } foreach ($left as $key => $value) { if (!array_key_exists($key, $right)) { return false; } if (!self::isEqual($value, $right[$key])) { return false; } } return true; } }