如何从例如22-09-2008中获取时间戳?
当前回答
以下是我的做法:
function dateToTimestamp($date, $format, $timezone='Europe/Belgrade')
{
//returns an array containing day start and day end timestamps
$old_timezone=date_timezone_get();
date_default_timezone_set($timezone);
$date=strptime($date,$format);
$day_start=mktime(0,0,0,++$date['tm_mon'],++$date['tm_mday'],($date['tm_year']+1900));
$day_end=$day_start+(60*60*24);
date_default_timezone_set($old_timezone);
return array('day_start'=>$day_start, 'day_end'=>$day_end);
}
$timestamps=dateToTimestamp('15.02.1991.', '%d.%m.%Y.', 'Europe/London');
$day_start=$timestamps['day_start'];
这样,您可以让函数知道您使用的日期格式,甚至可以指定时区。
其他回答
<?php echo date('M j Y g:i A', strtotime('2013-11-15 13:01:02')); ?>
http://php.net/manual/en/function.date.php
小心使用像strtotime()这样试图“猜测”您的意思的函数(它当然不会猜测,规则在这里)。
事实上,22-09-2008将被解析为2008年9月22日,因为这是唯一合理的事情。
08-09-2008将如何解析?可能是2008年8月9日。
那2008-09-50呢?某些版本的PHP将此解析为20 October 2008。
所以,如果你确定输入的是DD-MM-YYYY格式,最好使用@Armin Ronacher提供的解决方案。
使用PHP函数strtotime()
echo strtotime('2019/06/06');
date -格式化本地时间/日期
还有strptime(),它只需要一种格式:
$a = strptime('22-09-2008', '%d-%m-%Y');
$timestamp = mktime(0, 0, 0, $a['tm_mon']+1, $a['tm_mday'], $a['tm_year']+1900);
警告:
Windows系统不支持该功能 该函数在PHP 8.1.0中已弃用。非常不鼓励依赖这个函数。
对于PHP >=5.3, 7和8,这可能工作-
$date = date_parse_from_format('%Y-%m-%d', "2022-11-15"); //here you can give your desired date in desired format.
//just need to keep in mind that date and format matches.
$timestamp = mktime(0, 0, 0, $date['month'], $date['day'], $date['year'] + 2000); //this will return the timestamp
$finalDate= date('Y-m-d H:i:s', $timestamp); //now you can convert your timestamp to desired dateTime format.
文档:
date_parse_from_format () mktime () 日期()
推荐文章
- 如何从一个查询插入多行使用雄辩/流利
- 如何使用yyyyMMddHHmmss格式格式化当前时间?
- SQL Developer只返回日期,而不是时间。我怎么解决这个问题?
- 在mongodb中存储日期/时间的最佳方法
- 在PHP单元测试执行期间,如何在CLI中输出?
- 在PHP中使用heredoc的优势是什么?
- PHP中的echo, print和print_r有什么区别?
- 前一个月的Python日期
- 如何将XML转换成PHP数组?
- 如何将对象转换为数组?
- 从IP地址获取位置
- 如何在python中验证日期字符串格式?
- 获取数组值的键名
- HTTPS和SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA is OK
- PHP -获取bool值,当为false时返回false