Gravity Forms正则表达式为美国邮政编码

时间:2015-08-13 05:07:41

标签: php regex wordpress gravity-forms-plugin

我正在尝试为我创建的Gravity Form设置一些表单验证。我需要验证的其中一个字段是美国邮政编码。我想传递遵循nnnnnnnnnn-nnnn模式的ZIP。这是我的代码:

    if ( $field->type == 'address' ) {

    $zip = rgar( $value, $field->id . '.5' );

    if ( preg_match( "(^(?!0{5})(\d{5})(?!-?0{4})(|-\d{4})?$)", $zip ) && ! $field->get_input_property( '5', 'isHidden' )
    ) {
        $result['is_valid'] = false;
        $result['message']  = empty( $field->errorMessage ) ? __( 'Please enter a valid ZIP code (ie. 00000 or 00000-0000).', 'gravityforms' ) : $field->errorMessage;
    } else {
        $result['is_valid'] = true;
        $result['message']  = '';
    }
}

我的表单继续验证失败,我无法弄清楚原因。我已经仔细检查过.5是邮政编码的正确输入字段编号。有什么建议吗?

我的表单可在http://marcusjones.wpengine.com/

找到

0 个答案:

没有答案