php 数字转为日期格式,PHP日期格式转换

这是我有的:

$dateFormat = 'M d, Y';

$dateString = 'January 23, 2010';

我需要的是$dateString的时间戳,所以我可以这样做:

$newFormattedDate = date('Y-m-d', $timestamp);

我试图使用strtotime函数,但它试图找出格式本身,并不总是工作.在我的情况下,我知道日期字符串和日期格式.

如何将$timestamp设置为适合的值以与date函数一起使用?

编辑:我需要这个在Linux和Windows环境中工作.

编辑:该解决方案必须支持PHP 4或更高版本

编辑:MySQL有一个名为STR_TO_DATE的函数,它采用日期字符串和日期格式并返回Y-m-d格式的日期字符串. php的任何等效函数也适用于我.

解决方法:

从PHP5.3开始,您可以使用DateTime API

$dt = date_create_from_format('M d, Y', 'January 23, 2010');

echo date_timestamp_get($dt);

或者使用OOP表示法

$dt = DateTime::createFromFormat('M d, Y', 'January 23, 2010');

echo $dt->getTimestamp();

请注意,虽然DateTime在PHP中可用< 5.3,上面使用的方法不是,虽然您可以使用 - >格式(‘U’)模拟 – > getTimestamp(),但createFromFormat()没有简单的解决方法

另一种方法是使用Zend Framework的Zend_Date:

$date = new Zend_Date('Feb 31, 2007', 'MM.dd.yyyy');

echo $date->get(Zend_Date::TIMESTAMP);

标签:php,date

来源: https://codeday.me/bug/20190919/1812515.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值