php时间戳加减,php 时间戳是几位数

发布时间:2022-11-24

本文目录一览:

  1. php 日期加减法问题
  2. PHP 时间加减
  3. php中两个时间如何相减
  4. php时间加减怎么写?

php 日期加减法问题

不要将php想的这么笨,当前时间用time(),按你的需求来个最直接的办法。

$time = time();
for ($i = 1; $i <= 5; $i++) {
    $s = getdate($time - $i * 24 * 3600);
    $day[$i]['mdy'] = $s['mday'];
    $day[$i]['mon'] = $s['mon'];
}

这样你就得到过去5天的月和日了,将-换成+就是未来5天的月和日。 不过,我发现你是不太了解时间戳的定义。

  • 未来五天,就是 time() + 5 * 24 * 3600
  • 过去五天,就是 time() - 5 * 24 * 3600 为什么不能用时间戳?

PHP 时间加减

$year = '2010';
$month = '07';
$day = '01';
$hour = '17';
$minute = '30';
// 上面都是你的设定。但是你要注意,数字确实可以省略引号,但是用在日期里不合适。
// 比如【07】不加引号的话,保存到变量里就会变成【7】。会影响后面的时间戳~
$time_1 = strtotime($year . $month . $day . $hour . $minute);
$time_2 = $_SERVER['REQUEST_TIME']; // 现在大家用的环境都是PHP5吧?不支持的话只好换效率低点的time()。
$cle = $time_2 - $time_1; // 计算两个时间戳的差
$days = floor($cle / 86400); // 86400秒 == 1天
$hours = floor(($cle % 86400 / 3600) % 24);
$minutes = floor(($cle % 86400 / 60) % 60);
echo '相差 ' . $days . ' 天 ' . $hours . ' 小时 ' . $minutes . '分';
// 测试OK,给分吧兄弟~~!

php中两个时间如何相减

PHP 中的 strtotime() 函数可以实现。 strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

strtotime(time, now)

参数说明

  • time:规定要解析的时间字符串。
  • now:用来计算返回值的时间戳。如果省略该参数,则使用当前时间。

详细说明

成功则返回时间戳,否则返回 FALSE。在 PHP 5.1.0 之前本函数在失败时返回 -1

示例:

$start_time = '2015-05-01 10:10:10';
$end_time = '2015-06-01 10:10:10';
// 下面计算出的是秒,可以转化为天、时、分等
echo strtotime($end_time) - strtotime($start_time);

php时间加减怎么写?

如下:

echo "今天:", date('Y-m-d H:i:s'), "<br>";
echo "明天:", date('Y-m-d H:i:s', strtotime('+1 day'));

上一行输出当前时间,下一行输出明天时间。 这里 +1 day 可以修改参数 1 为任何需要的数,day 也可以改成 year(年)、month(月)、hour(小时)、minute(分)、second(秒)。 例如:

date('Y-m-d H:i:s', strtotime("+1 day +1 hour +1 minute"));

可以随便自由组合,以达到任意输出时间的目的。

:该方法只适用于1970年以后,也就是时间戳的适用范围。

php 常用日期函数

下面这些代码是一些常用的日期处理函数,包括日期加减、两日期之差、日期转换时间戳等。

echo date('Y-m-d', strtotime('+1 d', strtotime('2009-07-08'))); // 日期天数相加函数
echo date("Y-m-d", '1246982400');
echo '<br>';
echo date("Y-m-d", '1279123200');
die();
$d = "2009-07-08 10:19:00";
echo date("Y-m-d", strtotime("$d +1 day")); // 日期天数相加函数
function dateToTime($d) { // 把日期转换成时间戳
    $year = ((int)substr("$d", 0, 4)); // 取得年份
    $month = ((int)substr("$d", 5, 2)); // 取得月份
    $day = ((int)substr("$d", 8, 2)); // 取得几号
    return mktime(0, 0, 0, $month, $day, $year);
}
/*
下面函数计算两日期之差
*/
$Date_1 = "2009-07-08";
echo $Date_1 + 1;
$Date_2 = "2009-06-08";
$Date_List_a1 = explode("-", $Date_1);
$Date_List_a2 = explode("-", $Date_2);
$d1 = mktime(0, 0, 0, $Date_List_a1[1], $Date_List_a1[2], $Date_List_a1[0]);
$d2 = mktime(0, 0, 0, $Date_List_a2[1], $Date_List_a2[2], $Date_List_a2[0]);
$Days = round(($d1 - $d2) / 3600 / 24);
echo "两日期之前相差有 $Days 天";