有没有一种方法可以在php中使用filter_var在值与正确的过滤器匹配时返回true,否则返回false?
我想得到的是:
filter_var('email@example.com', FILTER_VALIDATE_EMAIL) => true
filter_var('http://google.com', FILTER_VALIDATE_URL) => true
filter_var('http://google', FILTER_VALIDATE_URL) => false
filter_var('test', FILTER_VALIDATE_EMAIL) => false
非常感谢。
如果有效,它将返回过滤后的值,否则返回false,因此这应该可以工作。
$valid_email = filter_var('email@example.com', FILTER_VALIDATE_EMAIL) ? true : false;
网址也一样
$valid_url = filter_var('http://google.com', FILTER_VALIDATE_URL) ? true : false;
我会用这样简单的东西:
(bool) filter_var('email@example.com', FILTER_VALIDATE_EMAIL);
这将始终导致布尔值:https://3v4l.org/BvAdE
还要注意,您说过您希望第三个示例返回false
但是http://google
是一个完全有效的URL。
把这个函数包装成一个满足您需求的函数怎么样?例如:
function my_filter_var($a, $b) {
if(filter_var($a, $b)===false){
return false;
}
else {
return true;
}
}
然而,我不建议使用它,因为它是对函数的不必要调用,当你可以在不实际调用函数的情况下实现你想要的东西时(因为调用函数是昂贵的)。发布此函数只是因为您想要以特定格式输出。
因此,此函数将按如下方式工作:
my_filter_var('email@example.com', FILTER_VALIDATE_EMAIL) => true
my_filter_var('http://google.com', FILTER_VALIDATE_URL) => true
my_filter_var('http://google', FILTER_VALIDATE_URL) => false
my_filter_var('test', FILTER_VALIDATE_EMAIL) => false
您应该使用我在函数中所做的,而不是创建函数。
我的spring boot应用程序配置为Reactive。但是我的REST APIendpoint配置为返回ResponseEntity而不使用Mono或flux。 我想实现过滤器,这将检查每个endpoint的传入头。旧的Servlet过滤器当然不起作用,新的WebFilter对webflux和其他过滤器也不起作用。
我检查了这个问题,在elasticsearch中查询DSL中必须和过滤器有什么区别?并阅读答案。 据我所知,必须和过滤器应该返回相同的结果。我说的对吗?但是当我把过滤查询改为必须时,我收到了更多的结果?我做错了什么? 我比较了过滤器,必须查询并得到不同的结果。
我看不到任何关于何时应该使用查询或过滤器或两者结合的描述。他们之间有什么区别?谁能解释一下吗?
目前 我在DynamoDB中有一个表,其中有一个属性-主键-包含唯一的值。 问题 我希望对#B#C#(1)精确匹配和(2)包含匹配进行2次搜索,因此只需要结果: 是否可以针对主键进行这2次搜索 如果是这样,运行哪种查询最有效?e、 g.查询或扫描 注: 对于(2),我使用以下代码,但它返回DB中的所有项:
应用筛选器之前的示例使用者记录是(在值中查找GP_ID): 当我在kafkaListenerContainerFactory()中按如下方式设置recordFilterStrategy时: KafKareCordvo.ConvertByteBufferToLong正在将bytebuffer值转换为long值。 但是,当它被Kafka听众按以下方式消费时: 这将返回删除我筛选的字段值的记录:“gp_
有什么建议吗?