Php 请给我解释一个preg_match if子句
假设键值为=be4e53680e6518cca701ec091258642f0740fe3d 有人能给我解释一下if的情况吗?我搞不清楚它到底在检查什么 好的,谢谢你们的澄清。 现在我又发布了一行与此相关的代码。如果你能帮我理解它Php 请给我解释一个preg_match if子句,php,preg-match,Php,Preg Match,假设键值为=be4e53680e6518cca701ec091258642f0740fe3d 有人能给我解释一下if的情况吗?我搞不清楚它到底在检查什么 好的,谢谢你们的澄清。 现在我又发布了一行与此相关的代码。如果你能帮我理解它 if(preg_match("/^[\w_.]+$/",stripslashes($_GET['key']))) { $key = $wpdb->escape(stripslashes($_GET['key'])); }
if(preg_match("/^[\w_.]+$/",stripslashes($_GET['key']))) {
$key = $wpdb->escape(stripslashes($_GET['key']));
}
假设$u GET['key']=be4e53680e6518cca701ec091258642f0740fe3d
$name=TomJones
到目前为止,我得到的是:
如果$\u GET['key']是数字,那么$key=stripslashes(GET\u key)
但是else什么时候会退出?它在请求的键参数中查找包含字母数字字符、下划线和点的字符串,下划线是可操作的,因为\w处理它点不应该转义,因为它在字符类中。请参阅此贴出的对我的代码的编辑。请检查密钥参数何时不符合regexp,主要是当它将为空或不包含上述任何字符时
if(preg_match("/^[\w_.]+$/",stripslashes($_GET['key']))) {
$key = $wpdb->escape(stripslashes($_GET['key']));
} else {
if(preg_match("/^[\w_.]+$/",$name)) {
$wpdb->query("some query;");
}
exit(0);
}