PHP < 5.3.0 中的 DateTime::createFromFormat

2023-12-11

我正在寻找与以下相同的功能日期时间::createFromFormat但我需要它在运行早于 v5.3 的 PHP 版本的环境中工作。 基本上我需要提供一种格式,就像您使用的Date()函数,然后我需要根据该格式解析/验证字符串,如果字符串格式正确,则返回时间戳和有效日期。

有人知道我在哪里可以找到类似的东西,还是我必须自己写?

同样,这必须使用作为参数提供的特定格式。格式可以是任何格式,所以不能保证我可以使用strtotime().


DateTime::createFromFormat and date_parse_from_format已在 PHP 5.3 中添加,因为对该功能的需求很高,尤其是为不使用美国日期/时间格式的用户编写代码的开发人员。


在此之前,您必须开发一个特定的函数来解析您正在使用的格式;对于 PHP

  • 决定应用程序接受哪种格式
  • 显示一些消息,内容如下“您的输入应该是 JJ/MM/AAAA” (法语表示 DD/MM/YYYY)
  • 检查输入是否正确,就该格式而言
  • 并解析它以将其转换为 PHP 可以理解的日期/时间。

这意味着应用程序和开发人员通常不允许使用那么多格式,因为每种格式都意味着一个不同的附加验证+解析功能。


如果您确实需要这种允许任何可能格式的函数,恐怕您必须自己编写它:-(

也许看看来源date_parse_from_format如果您了解 C 代码,可以提供帮助吗?它应该是这样的ext/date/php_date.c——但似乎没那么简单:它调用的是timelib_parse_from_format函数,其定义在ext/data/lib/parse_date.c,看起来不太友好^^

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP < 5.3.0 中的 DateTime::createFromFormat 的相关文章

  • 关于如何在 PHPUnit 中使用 setUp() 和tearDown() 有真实的例子吗?

    Methods setUp and tearDown 在每次测试之前和之后调用 但实际上 有没有任何真实的例子说明我为什么需要这个 检查其他人的测试 我总是看到类似的东西 public function setUp this gt test
  • SplFileObject + LimitIterator + 偏移量

    我有两行数据文件 两行仅用于我的示例 实际上 该文件可以包含数百万行 并且我使用 SplFileObject 和 LimitIterator 进行偏移 但这种组合在某些情况下会有奇怪的行为 offset 0 file new SplFile
  • 将文件附加到 PHPMailer

    我目前正在开发一个项目 该项目将文件作为 blob 存储在数据库中 我需要将文件附加到电子邮件并通过 PHPMailer 发送出去 我熟悉 mail gt addAttachment 但是 这个函数似乎只接受文件路径 而我没有 我想知道是否
  • PDO 和 MySQL 全文搜索

    我正在将所有站点代码从使用 mysql 函数转换为 PDO 关于 PDO 的 PHP 文档对于我的需求来说并不清楚 它为您提供了可以使用的功能 但没有详细解释它们在不同场景下的情况 基本上 我有一个 mysql 全文搜索 sql SELEC
  • 如何在代码输出中显示 PHP 错误?

    当通过浏览器执行PHP页面时 我们只会得到输出 但不会得到代码中的错误 如何查看后端代码发生的错误 我在代码中使用以下内容进行错误报告 error reporting E ALL E ALL ini set display errors 1
  • Ajax 刷新后的事件监听器

    我的网站上有一个结帐部分 我在数量部分运行此事件侦听器 以便每次根据单击的产品更新数量时 整个 div 都会使用 AJAX 重新加载 因此所有价格 总金额也会刷新 该代码可以工作一次 但之后该功能就不再工作了 cart product qu
  • 将 Pandas 系列转换为 DataFrame 中的日期时间

    我有一个 Pandas DataFrame 如下 ReviewID ID Type TimeReviewed 205 76032930 51936827 ReportID 2015 01 15 00 05 27 513000 232 760
  • php 错误地将字符串中的 ¬ 转换为 Ø

    我需要在 PHP 中组成一个简单的字符串 它是要发布到另一个站点的数据字符串 问题是其中一个字段是 notify url 当我使用该字段时 PHP 将其前面的 和 not 部分表示逻辑运算符 AND NOT 并将其转换为 字符 string
  • 将 bcrypt 密码哈希从 PHP 迁移到 Python - ValueError:无效的 hashed_pa​​ssword salt

    我有一个 PHP7 应用程序 它可以像这样对用户密码进行哈希处理 hash password hash password PASSWORD BCRYPT 例如 如果我通过test1234为此 我有 2y 10 aazE9OUKZlOQiM6
  • PHP foreach 数组与 stdClass 对象

    我需要帮助尝试获取数组和 stdClass 对象内的值 仅供参考 我正在使用 foursquare API 我有这样的事情 fsq groups venues gt response gt groups echo pre print r f
  • Symfony2 - 多种形式的主题

    有没有办法在同一页面上的两个 或多个 表单使用不同的主题 我有 2 个表单 我想对第一个表单使用主题 X 对第二个表单使用主题 Y 您需要在显示表单之前声明您的主题 你应该试试 form theme form ThemeX html twi
  • Woocommerce 从 woocommerce_add_to_cart_fragments 传回的错误片段

    我正在创建自定义 WooCommerce 购物车 并且更新购物车商品的数量工作正常 唯一的问题是它不会自动刷新 只有在页面加载后才起作用 我当前的代码使用woocommerce add to cart fragments挂钩并使用传入的 f
  • PHP 邮件功能不发送任何消息[重复]

    这个问题在这里已经有答案了 我对问题所在感到困惑 在使用时没有收到任何电子邮件mailphp 函数 PHP HTML
  • 如何从 PHP 访问表单的“名称”变量

    我正在尝试创建一个 BMI 计算器 这应该允许人们使用公制或英制测量单位 我意识到我可以使用隐藏标签来解决我的问题 但这之前曾困扰过我 所以我想我会问 我可以使用 POST variableName 查找提交的变量名字段值 但是 我不知道或
  • 如何在python中确定过去的时区特定日期是否是夏令时?

    有没有办法检查特定时区在我指定的日期是否处于夏令时 test dt datetime year 2015 month 2 day 1 pst pytz timezone America Los Angeles test dt pst loc
  • 550 Bad HELO - 主机冒充域名 Laravel

    我正在尝试设置 Laravel 身份验证 包括 密码重置 功能 但当我尝试发送电子邮件时 我偶然发现了一个错误 我得到的错误是 Expected response code 250 but got code 550 with message
  • 使用命名占位符时 PHP/SQL 插入错误

    我有以下 PHP PDO 语句 STH this gt db gt prepare INSERT INTO UserDetails FirstName LastName Address City County PostCode Phone
  • 在 Laravel Schema 中创建价格列

    我想在 Laravel 模式中创建一个价格列 public function up Schema create cameras function Blueprint table table gt increments id table gt
  • 我如何使用 F() 对象通过 Django ORM 来执行此操作?

    我遇到过这样的模型 class Task models Model timespan models IntegerField null True blank True class Todo models Model limitdate mo
  • 基于 ajax 的弹出窗口中的 Mathjax + CKEditor 4 + CKEditor

    我已经配置了 CKEditor 4 并且我的页面上有以下内容 我的页面中有一个 CKEditor 设置值的两个选项 这两个选项本身分别选项两个基于 ajax 的弹出窗口 这些基于 ajax 的弹出窗口包含 CKEditor 现在我有以下问题

随机推荐

  • 使用 qmake 获取日期

    由于我使用今天的日期作为我的应用程序版本 因此我有兴趣自动填充它 目前我正在我的项目文件中执行以下操作 VERSION 15 4 20 但我想让它自动进行 VERSION YEAR MONTH DAY 任何想法 您可以使用QMAKE POS
  • 抛出异常的哪一部分成本很高?

    在 Java 中 当实际上没有错误时 使用 throw catch 作为逻辑的一部分通常是一个坏主意 部分 因为抛出和捕获异常的成本很高 并且在循环中多次执行通常比其他方法慢得多不涉及抛出异常的控制结构 我的问题是 成本是在 throw c
  • 为什么使用“new NetworkCredential(用户名、密码)”无法对我的网站进行基本身份验证(从 WinForms C# 应用程序)?

    我有一个使用基本身份验证 用户名 密码 的网站 为什么下面的代码不起作用 当我运行它时 Web 应用程序会将我带到登录控制器 而我希望在我填充凭据的情况下它应该已经经过身份验证 换句话说 我试图确认在 NET 中如何确认我的winforms
  • JMeter。如何确定线程组何时完成

    我需要运行两个单独的线程组 第二组有无限循环计数 当第一组完成后 停止第二组 我如何确定第一组何时完成 这对我来说是工作 克里特岛 BeanShell 预处理器 代码如下 props put DONE FALSE 使用以下代码创建 Bean
  • .dll 已加载到另一个类加载器中?

    我有一个在 Tomcat 3 2 1 下运行的 web 应用程序 需要进行 JNI 调用 为了访问遗留 C 代码中的数据和方法 servlet 已加载 在 webapp 的启动 作为其一部分init方法 产生一个数据集 特定于要加载到 C
  • Python 中的日期时间解析时区不一致

    当我在 Python 3 X 中运行以下命令时 import datetime DATE TS FORMAT Y m d H M S f Z date ts datetime datetime 2019 1 2 3 4 5 tzinfo d
  • Python timedelta 负值问题

    您好 我需要一些帮助来理解为什么会发生这种情况 我有一种方法可以跟踪事件程序中的 剩余时间 def get program time budget self return self estimated duration self get p
  • 多处理在 Ubuntu 中有效,但在 Windows 中无效

    我正在尝试使用这个例子作为我的cherrypy应用程序上的排队系统的模板 我能够将它从 python 2 转换为 python 3 更改from Queue import Empty into from queue import Empty
  • 无法使用 SPARQL 从 LinkedMDB 检索高 ID 的电影

    我正在运行以下查询LinkedMDB SPARQL 端点它有效 有了它 我可以获得有关 id 72 的电影导演的所有信息 即Titanic 所以我得到了关于詹姆斯 卡梅隆的信息 PREFIX mdb
  • Laravel 5 中间件“所有者”?

    我在创建 所有者 中间件时遇到麻烦 例如 我有一个Articles and User模型关联于user id key 我想将 所有者 中间件添加到ArticlesController 因此该文章的唯一所有者可以编辑 更新和删除它 我已经搜索
  • 我可以使用设备的相机在 Unity 中拍照吗?

    我完全不熟悉 Unity3D 更复杂的功能集 并且很好奇它是否有能力拍摄照片然后对其进行操作 具体来说 我的愿望是让用户拍一张自拍照 然后让他们在脸部周围描画以创建一个 PNG 然后将其纹理映射到模型上 我知道将面部映射到模型上很简单 但我
  • 在 didFinishLaunchingWithOptions 结束之前是否曾调用过 applicationWillResignActive ?

    某个场景会发生在哪里吗 applicationWillResignActive 之前会被调用application didFinishLaunchingWithOptions ends 基本上 我可以指望application didFin
  • TryParse SSIS 忽略源行

    我有一个序列化代码 在该代码中存在一些数值 这些数值在解析时表示日期 For example 011756420176654 Note array index may be off Substring 1 2 01 Substring 3
  • 使用工作表 CodeName 并避免 .Select 和 .Activate

    在我的工作簿中 我经常需要使用它们来激活一些工作表CodeName then 搜索一些文本在那张纸上和使用单元格的行号或列号其中包含我正在寻找的文本 在这种情况下 我使用以下代码 Sheet16 Select Using codename
  • 为什么改变颜色或粗体的一个单元格的一部分不再起作用?

    In Excel 可以更改部分单元格的字体颜色 我已经尝试过下面的代码 更新后无法使用Excel 365对于价值 不是公式 Set ce cells 5 3 ce Characters 1 5 Font Color vbBlue 它应该更改
  • Ajax 请求并非向所有人开放

    我使用 CodeIgniter 创建了一个网络应用程序 我在应用程序中有几个地方使用了ajax 我想知道是否有一种方法可以停止对 ajax 控制器的直接访问和查询 而只允许处理源自页面的合法 ajax 请求 Thanks 是的 您可以毫无问
  • 在常规 UIViewController 上的 UITableViewCell 中滚动键盘上方的 UITextField

    我已经尝试过 StackOverflow 上的大部分示例 我也用过苹果的 我似乎遇到的问题是他们没有考虑 UITableView 中的 UITextField 我已经这样做过很多次了 但不是以这种方式 我有一个自定义 UITableView
  • std::async 函数串行运行

    当在 for 循环中使用 std async 和 launch async 时 我的代码在同一线程中串行运行 就好像每个异步调用在启动之前都会等待前一个调用一样 在 std async 引用的注释中 std 异步 如果 std future
  • Android应用程序中的云端点身份验证失败

    我第一次尝试在 Google Cloud Endpoints android 应用程序中以调试模式使用身份验证时遇到了问题 我这样设置凭据 credential GoogleAccountCredential usingAudience t
  • PHP < 5.3.0 中的 DateTime::createFromFormat

    我正在寻找与以下相同的功能日期时间 createFromFormat但我需要它在运行早于 v5 3 的 PHP 版本的环境中工作 基本上我需要提供一种格式 就像您使用的Date 函数 然后我需要根据该格式解析 验证字符串 如果字符串格式正确