有没有一种简单的方法可以将$_POST['var']
转换为php正则表达式模式?
获取用户输入时:
<input type="text" id="txt1" />
并将其发布到php文件,该字符串可通过以下方式访问:
$_POST['txt1']
我试过了:
$userPattern = "/^" . preg_quote($_POST['txt1']) . "$/";
但是当用户输入包含/
等特殊字符时,我会收到错误“preg_match():Unknown modifier'$'”
答案 0 :(得分:0)
你很接近这一行:
$userPattern = "/^" . preg_quote($_POST['txt1']). "$/";
但错过了一个额外的参数,表明你正在使用的分隔符,如http://www.php.net//manual/en/function.preg-quote.php中所述:
$userPattern = "/^" . preg_quote($_POST['txt1'], '/') . "$/";
分隔符可以是任何&#34;任何非字母数字,非反斜杠,非空白字符&#34;如下所述:http://www.php.net//manual/en/regexp.reference.delimiters.php