php编程输出今天的时间,日期和时间 - [ PHP编程之道 ] - 在线原生手册 - php中文网...

PHP 中 DateTime 类的作用是在你读、写、比较或者计算日期和时间时提供帮助。除了 DateTime 类之外,PHP 还有很多与日期和时间相关的函数,但 DateTime 类为大多数常规使用提供了优秀的面向对象接口。它还可以处理时区,不过这并不在这篇简短的介绍之内。

在使用 DateTime 之前,通过 createFromFormat() 工厂方法将原始的日期与时间字符串转换为对象或使用 new DateTime 来取得当前的日期和时间。使用 format() 将 DateTime 转换回字符串用于输出。<?php

$raw = '22. 11. 1968';

$start = DateTime::createFromFormat('d. m. Y', $raw);

echo 'Start date: ' . $start->format('Y-m-d') . "\n";

对 DateTime 进行计算时可以使用 DateInterval 类。DateTime 类具有例如 add() 和 sub() 等将 DateInterval 当作参数的方法。编写代码时注意不要认为每一天都是由相同的秒数构成的,不论是夏令时(DST)还是时区转换,使用时间戳计算都会遇到问题,应当选择日期间隔。使用 diff() 方法来计算日期之间的间隔,它会返回新的 DateInterval,非常容易进行展示。<?php

// create a copy of $start and add one month and 6 days

$end = clone $start;

$end->add(new DateInterval('P1M6D'));

$diff = $end->diff($start);

echo 'Difference: ' . $diff->format('%m month, %d days (total: %a days)') . "\n";

// Difference: 1 month, 6 days (total: 37 days)

DateTime 对象之间可以直接进行比较:<?php

if ($start 

echo "Start is before the end!\n";

}

最后一个例子来演示 DatePeriod 类。它用来对循环的事件进行迭代。向它传入开始时间、结束时间和间隔区间,会得到这其中所有的事件。<?php  // output all thursdays between $start and $end

$periodInterval = DateInterval::createFromDateString('first thursday');

$periodIterator = new DatePeriod($start, $periodInterval, $end, DatePeriod::EXCLUDE_START_DATE);

foreach ($periodIterator as $date)

{

// output each date in the period

echo $date->format('Y-m-d') . ' ';

}

Carbon 是一个很受欢迎的 PHP API 扩展。它继承了 DateTime 类的所有功能,因此只需修改很少的代码就可以使用更多额外的功能,例如支持本地化、日期加减以及格式化 Datetime 对象,另外还能根据你的选择来模拟日期和时间并测试你的代码。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值