php版本8.0/7.4测试得到结果:
在邮箱验证时报错 错误信息为filter_var(): Argument #3 ($options) must be of type array|int, null given
经查找为目录“vendor/topthink/framework/src/think/Validate.php”
的第 1178到1189行错误
原始代码为:

    public function filter($value, $rule): bool
    {
        if (is_string($rule) && strpos($rule, ',')) {
            [$rule, $param] = explode(',', $rule);
        } elseif (is_array($rule)) {
            $param = $rule[1] ?? null;
            $rule  = $rule[0];
        } else {
            $param = null;
        }
        
        return false !== filter_var($value, is_int($rule) ? $rule : filter_id($rule), $param);
    }

修正代码为

    public function filter($value, $rule): bool
    {
        if (is_string($rule) && strpos($rule, ',')) {
            [$rule, $param] = explode(',', $rule);
        } elseif (is_array($rule)) {
            $param = $rule[1] ?? array();
            $rule  = $rule[0];
        } else {
            $param = array();
        }
        
        return false !== filter_var($value, is_int($rule) ? $rule : filter_id($rule), $param);
    }

经查找filter_var() 手册https://www.php.net/manual/zh/function.filter-var.php
代码中$param 也就是filter_var的第三个值 应为:规定一个包含标志/选项的关联数组或者一个单一的标志/选项。检查每个过滤器可能的标志和选项。