You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Codeigniter表单验证中用regex_match验证多种日期格式

如何在Codeigniter中验证多种日期格式

你需要验证的日期格式包含以下四类:d/m/yyyy、dd/mm/yyyy、dd/m/yyyy、d/mm/yyyy,且年份限定为2020-2025。

你当前使用的正则规则:

/^([1-9]|1[0-9]|2[0-9]|3[0-1])\/([1-9]|1[0-2])\/202[0-5]$/

本身已经可以匹配无前置零的四类目标格式,比如3/5/2023、12/11/2024、21/3/2022、5/10/2025都可以正常命中。如果需要支持带前置零的日期(比如03/05/2023、09/3/2024这类格式),需要对正则做调整。


调整后支持带/不带前置零的正则规则:

/^(0?[1-9]|[12][0-9]|3[01])\/(0?[1-9]|1[012])\/202[0-5]$/

对应的Codeigniter表单验证代码:

$this->form_validation->set_rules('mir_date', 'MIR Date', 'required|regex_match[/^(0?[1-9]|[12][0-9]|3[01])\/(0?[1-9]|1[012])\/202[0-5]$/]', [
    'required' => 'MIR Date 为必填项',
    'regex_match' => 'Invalid MIR Date'
]);

上述规则可完整覆盖所有目标日期格式:

  • d/m/yyyy 格式,例:2/4/2023
  • dd/mm/yyyy 格式,例:12/09/2024
  • dd/m/yyyy 格式,例:21/5/2022
  • d/mm/yyyy 格式,例:3/11/2025

内容的提问来源于stack exchange,提问作者StoledInk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 03:36:00