此扩展提供可用于验证或清理数据的过滤器。当数据源包含未知(或外部)数据(例如用户提供的输入)时,这尤其有用。例如,此数据可能来自HTML表单。
主要有两种类型的过滤:验证和清理。
验证过滤器用于检查数据是否满足特定条件。这些过滤器由FILTER_VALIDATE_*
常量标识。例如,FILTER_VALIDATE_EMAIL
过滤器可用于确定数据是否为有效的电子邮件地址。但是,它永远不会更改输入数据。
另一方面,清理会“清理”数据,因此它可能会通过添加或删除字符来更改输入数据。这些过滤器由FILTER_SANITIZE_*
常量标识。例如,FILTER_SANITIZE_EMAIL
过滤器将删除电子邮件地址中不合适的字符。但是,清理后的数据不会被验证以检查它是否为有效的电子邮件地址。
大多数过滤器都支持可选的标志,这些标志可以调整过滤器的行为。这些标志由FILTER_FLAG_*
常量标识。例如,将FILTER_FLAG_PATH_REQUIRED
与FILTER_VALIDATE_URL
验证过滤器一起使用,要求URL具有路径(例如/foo
在https://example.org/foo
中)。