当我发送一些字段为空的POST时,preg_match无效

时间:2014-09-04 10:23:22

标签: php regex

我有以下代码来匹配preg_match函数以使帖子清理。###

foreach ( $_POST as $key => $value) {
    if (preg_match("~^[\r\n\s\w\d /<>:,.?@;-]+$~", $value)) {
        echo 'Correct';
    } else {
        echo 'Incorrect';
    }
}

我在PHP中有一个POST数组,其中一些字段可能为空/空。当我将某些字段留空时,它会在字面上给出错误,这里说不正确而不是接受。我希望它们通过preg_match甚至一些字段为空。

我确实关注了print_r的POST,其中一些字段为空

Array {
    [email] => mi@mi2.com
    [facebook] => 
    [twitter] => 
    [gplus] => glus
    [firstname] => mi2
}

1 个答案:

答案 0 :(得分:0)

<urregex>|(^$)

试试这个。看看演示。

http://regex101.com/r/oO8zI4/1