php时间戳,日期时间转换及使用大全

PHP基础教程(124)PHP日期和时间函数之获取当前时间戳:[特殊字符]你以为APP里的“刚刚”是随意的?那是程序员用时间戳玩的“时间魔术”! 时间戳——那个藏在每个动态“刚刚”“3分钟前”背后的数字密码!本文将带你揭秘PHP如何用time()、microtime()、date()等函数玩转时间魔法,从社交软件的时间显示到电商限时秒杀,手把手教你用时间戳打造动态时间显示、精准倒计时、高效日期计算,附赠时区穿越避坑指南! 阅读详情

php开发过程中,经常会用到一些针对日期、时间、时间戳的转换获取等操作,如下个月第一天啊,上周啊,每个月第三天啊;形式多样,层出不穷。然而,具体到应用时,总想不起具体使用方式,查询网上总没有一个非常全面的整理。不论是博客上还是官网上,都不全面,有的只是文字说明,有的只是简单实例,都不具有实战性。
基于此,整理本文;本文几乎全部是实例;看着非常方便。

1,各种类型时间戳转换

//时间戳加减时间段,day,week,month,year是否带s都可以,与前面的数字是否有空格也都可以。
//因此,这个strtotime对格式要求不严格
$tt=strtotime("+3 days",$time);//$time 3天之后的时间戳
$tt=strtotime("+6 month",$time);//$time6个月之后的时间戳
$tt=strtotime("+1 year 6 months",$time);//指定时间戳1年6个月后的时间戳

$t=time();//当前时间:1545184219,2018-12-19上午9点50
echo strtotime(date('Y-m-01', $t));//结果是:1543593600(2018/12/1 0:0:0)
echo strtotime(date('Y-m-10', $t));//结果是:1544371200(2018/12/10 0:0:0)
echo strtotime(date('Y-m-d 8:0:0', $t));//结果是:1545177600(2018/12/19 8:0:0)
echo strtotime(date("Y-m-d",time()).' 23:59:59');//当天23:59:59的INT类型时间戳
echo strtotime(date("Y-m-t", $tt1).' 23:59:59');//根据某一时间戳获取当月最后的时间戳

//月和日按个位数不补0情况
echo date('Y年n月j日', strtotime(date('2018-08-06')));//结果是:2018年8月6日

$t0 = strtotime(date('Y-m-01', strtotime('-1 month', $t)));//上月起点
$t1 = strtotime(date('Y-m-01'));//本月起点
$t2 = strtotime(date('Y-m-t 23:59:59'));//本月终点

$t0 = strtotime("monday this week");//获取本周周一时间戳
$t0 = strtotime("monday last week");//获取上周周一时间戳

//关于生日判断
$shengri='1986-01-06';
$date=date("m-d",strtotime($shengri));//结果是:01-06
$t_date=strtotime(date('Y-'.$date.'8:0:0', time()));//结果是:1546732800(2019/1/6 8:0:0)

2,根据时间戳获取星期几方法

$week_array = array("日", "一", "二", "三", "四", "五", "六");
$week = date("w", time());
echo "今天是星期".$week_array[$week];

3,关于strtotime()出现的一些奇怪的问题

date("Y-m-d",strtotime("-1 month"))//如果当前是2018-07-31,则输出2018-07-01
var_dump(date("Y-m-d", strtotime("2017-06-31")));//输出2017-07-01

虽然这个问题看起来很迷惑, 但从内部逻辑上来说呢, 其实是"没问题"的,因为这样:
我们来模拟下date内部的对于这种事情的处理逻辑:
1. 先做-1 month, 那么当前是07-31, 减去一以后就是06-31.
2. 再做日期规范化, 因为6月没有31号, 所以就好像2点60等于3点一样, 6月31就等于了7月1

也就是说, 只要涉及到大小月的最后一天, 都可能会有这个迷惑, 我们也可以很轻松的验证类似的其他月份, 印证这个结论:

var_dump(date("Y-m-d", strtotime("-1 month", strtotime("2017-03-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("+1 month", strtotime("2017-08-31"))));
//输出2017-10-01
var_dump(date("Y-m-d", strtotime("next month", strtotime("2017-01-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("last month", strtotime("2017-03-31"))));
//输出2017-03-03

那怎么办呢?
从PHP5.3开始呢, date新增了一系列修正短语, 来明确这个问题, 那就是"first day of" 和 "last day of", 也就是你可以限定好不要让date自动"规范化":

var_dump(date("Y-m-d", strtotime("last day of -1 month", strtotime("2017-03-31"))));
//输出2017-02-28
var_dump(date("Y-m-d", strtotime("first day of +1 month", strtotime("2017-08-31"))));
//输出2017-09-01
var_dump(date("Y-m-d", strtotime("first day of next month", strtotime("2017-01-31"))));
//输出2017-02-01
var_dump(date("Y-m-d", strtotime("last day of last month", strtotime("2017-03-31"))));
//输出2017-02-28

PHP高效实现:批量将数组中的日期时间转为时间戳 PHP高效日期转时间戳方案 本文详解三种专业方法: 1️⃣ 基础循环:foreach+strtotime()处理一维数组,自动识别多种日期格式 2️⃣ 高效批量:array_map()实现万级数据快速转换,性能提升20% 3️⃣ 递归处理:智能识别嵌套结构中的日期字段(如created_at),支持任意层级 关键优势: ✔️ 无效日期自动转为null ✔️ 内存优化+时区安全处理 ✔️ 支持毫秒级精度(DateTime方案) 适用场景:日志分析、数据库处理、API响应优化等需要时间计算的场景。 150字精准 阅读详情

相关推荐

PHP时间戳和日期相互转换操作总结

1. php中时间转换函数 strtotime(date("Y-m-dH:i")) date("Y-m-dH:i",$unixtime) 2. php中获得今天零点的时间戳要获得零点的unix时间戳,可以使用 $todaytime=strtotime("today") 然后再使用 date("Y-m-dH:i",$todaytime) 转换为日期。 时间戳转换为日...

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 2万+

PHP时间戳

PHP时间戳 UNIX 时间戳(timestamp)是 PHP 中关于时间日期一个很重要的概念,它表示从 1970年1月1日 00:00:00 到当前时间的秒数之和。 PHP提供了内置函数 time() 来取得服务器当前时间的时间戳。 例如: <?php echo time(); ?> 上面的例子运行后得到的是一串类似这样的数字:1279115455 我们可以通过 date() 等函数将它格式化为我们需要的时间日期格式。 有效的时间戳典型范围是格林威治时间 1901年12月13日 20:

weixin_45820444的博客 1万+

使用PHP将任意格式的日期转换为Unix时间戳

将 Excel 中的日期时间格式转换为 PHP 中的日期时间格式。Excel 中的日期时间格式是以基准日期 1900 年 1 月 1 日为起点,每过一天就加 1,每过一秒就加上相应的秒数。因此,需要将 Excel 中的日期时间值减去基准日期的差值(即 25569 天),再乘以一天的秒数(即 86400 秒),得到相对于 Unix 纪元的秒数。需要注意的是,Excel 中的日期时间格式和 PHP 中的日期时间格式不同,需要进行一些转换。函数将任意格式的日期时间字符串转换为 Unix 时间戳。

Programming Talk 793

PHP时间转时间戳的几种方法

strtotime()函数是PHP中用于将日期和时间字符串转换为时间戳的函数,它接受一个日期格式字符串作为参数。date()函数是PHP中用于格式化日期和时间的函数,该函数的第一个参数是格式化字符串,第二个参数是可选的时间戳。mktime()函数是PHP中一个创建UNIX时间戳的函数,它接受一个包含日期和时间信息的参数列表,并返回对应的时间戳。注意事项:以上几种方法都是在默认时区下的操作,如果需要指定时区,可以通过date_default_timezone_set()函数设置。

weixin_57964731的博客 4578

PHP时间戳与日期时间转换详解

输入格式示例含义说明2024-06-01日期格式日期 + 时间格式+1 week当前时间加一周当前时间减两天三小时下一个周五上一个周一tomorrow明天yesterday昨天错误类型示例代码建议解决方式无效日期格式提前验证输入格式时区导致偏差使用DateTime类处理时区相对时间歧义使用明确的日期或时间偏移。

weixin_35752233的博客 964

CentOS7下通过YUM源高效部署Zabbix7 Agent指南

本文详细指导在已结束生命周期的CentOS7系统上,通过更换YUM源(如阿里云镜像)并添加Zabbix官方仓库,高效部署Zabbix7 Agent。文章涵盖从源配置、软件安装、关键参数修改到服务启动与防火墙设置的全流程,帮助用户解决依赖错误,快速建立服务器监控。

weixin_29230059的博客 268

php--------获取当前时间、时间戳

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33854644的博客 772

解读文献(五)------基于阻抗控制

文章目录背景主动柔顺控制阻抗控制基于力的阻抗控制基于位置的阻抗控制力位混合控制 背景 主动柔顺控制 阻抗控制 基于力的阻抗控制 基于位置的阻抗控制 力位混合控制 ...

accumulation 1万+

PHP时间戳与日期之间转换

1.获取当前日期时间的时间戳: echo time(); 获取当前日期时间: echo date("Y/m/d H:i:s"); 2.日期转换为时间戳: echo strtotime(date("Y/m/d")); 时间戳转换为日期: echo date('Y-m-d',time()); 3.打印明天此时的时间戳 echo strtotime("+1 day"); 当前时间: echo date("Y-m-d H:i:s",time()) ; 指定时间: echo date("Y-m-d H:i

weixin_45624316的博客 2756

相机基础知识讲解:CMOS和CCD

相机基础知识讲解:CMOS和CCD

Coppa的博客 5万+

【nvidia-B200 生产环境】NVIDIA 570.124.06+Cuda12.8 Ubuntu22.04 nccl-test 一键部署脚本(免修改复制即用)

目录1. 初始化与日志记录2. 安装基础工具与配置更新3. NVIDIA 驱动安装 570.124.064. 安装 Mellanox OFED 24.10-2.1.8.05. 安装 CUDA 12.86. 安装 NCCL 和测试7. 配置 rc.local 和其他优化8. B200 单独步骤9. 最终测试与重启10. 完整生产脚本,复制即可直接使用总结 功能: 设置日志目录和日志文件路径。 使用 命令将标准输出和错误输出同时写入日志文件和终端。 记录脚本开始时间,并计算开始的秒数

jundao1997的专栏 2798

PHP时间戳和日期的相互转换

获取当前日期时间的时间戳 echo time(); //1589979897 获取当前日期时间 echo date("Y/m/d H:i:s"); //2020/05/20 21:05:00 日期转换为时间戳 echo strtotime(date("2020-05-20")); //1589904000 时间戳转换为日期 echo date('Y-m-d',time()); //2020-05-20 打印明天此时的时间戳 ...

BUG制造者:图图 <p>这是一个P标签</p> 3123

基于UC3842的反激电源的全面深入解析与MATLAB仿真

内置电流检测,可实现电流模式控制,提高系统的动态响应性。多种保护功能,如欠压锁定、过温保护、短路保护等,确保系统的安全可靠运行。宽工作电压范围,适应不同的电源设计需求。简单的外部元件配置,易于实现。UC3842的典型应用包括开关电源、DC-DC转换器和反激式电源等,其稳定性和可靠性在实际应用中得到了广泛验证。

qq_38334677的博客 1086

php时间戳转换成日期格式,PHP时间戳和日期格式相互转换

【摘要】PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。下面是PHP时间戳和日期格式相互转换,让我们一起来看看PHP时间戳和日期格式相互转换的具体内容吧!PHP时间戳和日期相互转换操作总结1.php中时间转换函数strtotime(date("Y-m-d ...

weixin_31653971的博客 4291

Python爬虫:爬取拼多多平台商品信息、销量、价格等数据

在本篇博客中,我们将深入探讨如何使用Python爬虫技术爬取拼多多平台的商品信息,包括商品的标题、销量、价格等详细数据。拼多多的商品页面通常是分页展示的,因此我们需要遍历多个页面,获取所有商品的信息。每个商品在拼多多平台上都有一个唯一的商品ID,我们可以通过该ID访问商品页面。通过以上的技术方案和代码示例,你已经掌握了如何使用Python爬虫获取拼多多平台上的商品信息、销量、价格等数据。等技术,解决拼多多平台的反爬虫机制,成功抓取我们所需的商品数据。,我们能够应对拼多多的反爬虫机制,稳定地获取到商品数据。

2201_76125261的博客 3656

当AI学会写“自传”:OpenClaw 的 SOUL.md 如何把配置文件变成一颗会变形的心

SOUL.md。

步子哥的博客 1309

php中时间戳和日期格式的转换

一,PHP时间戳函数获取指定日期的unix时间戳 strtotime(”2009-1-22″)示例如下: echo strtotime(”2009-1-22″) 结果:1232553600 说明:返回2009年1月22日0点0分0秒时间戳 二,PHP时间戳函数获取英文文本日期时间 示例如下: 便于比较,使用date将当时间戳与指定时间戳转换成系统时间 (1)打印明天此

中国石油大学 INThe Du Jin Feng 2450

innovus:set_clock_latency与insertion_delay

当1ns clock latency设置在capture上,在report_timing报告中体现在other end arrival time以及capture clock path的Arrival Time上。因为-1ns的insertion delay存在,所以skew group报告中显示的Arrival (ns)是减1ns的结果,即1.819-1=0.819 ns。CTS阶段create_ccopt_clock_tree_spec之后,spec中会产生对应的insertion_delay命令。

m0_61544122的博客 1621

PHP-时间戳的转换

比如,要计算一个操作从开始到结束所花费的时间,就可以在操作开始时记录一个时间戳,操作结束时记录另一个时间戳,然后用结束时间戳减去开始时间戳,得到操作所花费的秒数。可以在需要显示日期和时间的时候,根据用户所在的时区将时间戳转换为对应的本地时间。因为它是一个简单的数字,占用的存储空间小,并且在进行日期和时间的比较、排序等操作时非常方便。它接受两个参数,第一个参数是一个格式化字符串,用于指定输出的日期时间格式,第二个参数是可选的时间戳(如果不提供,默认使用当前时间戳)。所表示的日期时间对应的时间戳。

2302_80015746的博客 1189

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

php时间戳转换

在php中我们要把时间戳转换日期可以直接使用date函数来实现,如果要把日期转换成时间戳可以使用strtotime()函数实现,下面我来给大家举例说明。 在线工具推荐:Unix时间戳转换工具 1.php中时间转换函数 strtotime (date()) date("Y-m-d H:i",$unixtime) 2.php中获得今天零点的时间戳 要获得零点的unix时间戳,可以使用 $to...

zt772612939的博客 292

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

php时间戳转换英文格式日期_php中时间戳和日期格式的转换

一,PHP时间戳函数获取指定日期的unix时间戳 strtotime(”2009-1-22″) 示例如下:echo strtotime(”2009-1-22″) 结果:1232553600说明:返回2009年1月22日0点0分0秒时间戳二,PHP时间戳函数获取英文文本日期时间 示例如下:便于比较,使用date将当时间戳与指定时间戳转换成系统时间(1)打印明天此时的时间戳strtotime(”+1 ...

weixin_39602891的博客 657

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

php时间戳与日期转换

日期转换为时间戳 PHP 提供了函数可以方便的将各种形式的日期转换为时间戳,该类函数主要是: strtotime():将任何英文文本的日期时间描述解析为时间戳。 mktime():从日期取得时间戳。 strtotime() strtotime() 函数用于将英文文本字符串表示的日期转换为时间戳,为date()的反函数,成功返回时间戳,否则返回 FALSE 。 ...

anzhenji7632的博客 245

php 时间转换时间戳_如何实现PHP时间戳与日期的转换

PHP培训 中山PHP培训 中山职教PHP培训 中山电脑培训 中山职教电脑培训 网页设计培训 中山网页设计培训 网络营销培训 中山职教网络营销培训 PHP编程 招生 报名众多的PHP程序员也许对PHP时间戳已有所了解,那么我们如何应用它来获取具体的日期呢?以下是介绍一下PHP时间戳获取当前时期的具体方式。现在讲述一下其实现的基本功能:获取某个日期的时间戳,或获取某个时间的PHP时间戳。strtot...

weixin_34856035的博客 241

PHP时间戳的转换

PHP把26/09/2011 03:00pm转换成时间戳 <?php $str = "26/09/2011 03:00pm"; $time = explode(" ", $str); //在空格处把字符串拆分成两个数组$time[0]="26/09/2011"和$time[1]="03:00pm" $date = explode("/", $time[0]);/

seafoodge的专栏 1025

php转换时间戳的函数,php时间戳的转换函数

php时间戳的转换函数PHP 提供了函数可以方便的将各种形式的日期转换为时间戳,该类函数有哪些?下面yjbys小编为大家分享php时间戳的转换函数,欢迎阅读!strtotime():将任何英文文本的日期时间描述解析为时间戳。mktime():从日期取得时间戳。strtotime()strtotime() 函数用于将英文文本字符串表示的日期转换为时间戳,为 date() 的反函数,成功返回时间戳,否...

weixin_35068077的博客 493

转换php时间戳,如何实现转换php时间戳

如何实现转换php时间戳如何实现转换php时间戳?可以使用strtotime()函数实现转换php时间戳。strtotime()定义和用法strtotime() 函数将任何英文文本的日期或时间描述解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数)。注意:如果年份表示使用两位数格式,则值 0-69 会映射为 2000-2069,值 70-100 会映射为...

weixin_29161785的博客 125
上一篇: php雅黑探针,亲测可用,代码精校排版,支持php7
下一篇: php环境下,两种汇率接口,已经测试通过
喜爱cpp
博客等级 码龄18年 129粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喜爱cpp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值