首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP strtotime()没有返回正确的月份

PHP strtotime()函数是用于将字符串转换为Unix时间戳的函数。它通常用于处理日期和时间相关的操作。然而,有时候在使用strtotime()函数时可能会遇到一些问题,比如返回的月份不正确。

出现这种问题的原因可能是因为传入strtotime()函数的日期字符串格式不符合预期,或者是PHP版本的问题。下面是一些可能导致问题的原因和解决方法:

  1. 日期字符串格式不正确:strtotime()函数对日期字符串的格式有一定的要求。常见的日期格式包括"YYYY-MM-DD"、"MM/DD/YYYY"、"DD-MM-YYYY"等。如果传入的日期字符串格式不正确,strtotime()函数可能无法正确解析日期,导致返回的月份不正确。解决方法是确保传入的日期字符串格式正确,可以使用date()函数来格式化日期字符串。
  2. PHP版本问题:有些PHP版本可能存在strtotime()函数的Bug或者不完全支持某些日期格式。如果你的PHP版本较旧,可以尝试升级到最新版本,以获得更好的兼容性和Bug修复。

综上所述,如果PHP的strtotime()函数没有返回正确的月份,你可以检查传入的日期字符串格式是否正确,并确保PHP版本较新。如果问题仍然存在,可以尝试使用其他日期处理函数或者自定义解析日期的方法来解决。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

PHP获取当前时间、年份、月份、日期和天数

语法: date(format,timestamp) 其中参数 format 为显示格式,参数 timestamp 为时间戳,是可选择,默认为 time() ,即如果没有给出时间戳则使用本地当前时间。...March) M - 表示月份(3个字母:Jun) m - 表示月份,有前导0(数字:04) n - 表示月份,无前导0(数字:4) d - 表示月份第几天,有前导0(01-31) j -  表示月份第几天...> getdate:获取日期信息 通过 getdate() 函数可以获取日期信息,而该函数返回值为一个数组,其中包括指定日期和时间信息。如果没有给出时间戳,则输出是本地当前日期和时间。...mktime() 函数返回日期 Unix 时间戳。Unix 时间戳包含 Unix 纪元(1970 年 1 月 1 日 00:00:00 GMT)与指定时间之间秒数。...> 运行结果: 创建日期是:2015-06-10 09:12:31AM 通过 PHP strtotime() 用字符串来创建日期 PHP strtotime() 函数用于把人类可读字符串转换为 Unix

23.4K10
  • PHP获取当前系统时间办法小结

    (‘PRC’); php获取当前时间、时间戳 首先需要知道是在php中获取时间办法是date(),在php中获取时间戳办法有time()、strtotime()。...time() 返回当前时间 Unix 时间戳,没有参数。 strtotime(time, now) 将任何英文文本日期时间描述解析为 Unix 时间戳。...time 为必填,规定要解析时间字符串;now 用来计算返回时间戳,如果省略该参数,则使用当前时间。...z – 一年中第几天; 如: “0” 至 “365” time()用法举例: time();输出结果:1332427715(返回结果即当前时间戳) strtotime($time)用法举例:...php获取当前时间毫秒数 php本身没有提供返回毫秒数函数,但提供了microtime()办法,它会返回一个数组,包含两个元素:一个是秒数、一个是小数表示毫秒数,我们可以通过此办法获取返回毫秒数

    6.2K21

    PHP获取当前系统时间方法小结

    (‘PRC’); php获取当前时间、时间戳 首先需要知道是在php中获取时间方法是date(),在php中获取时间戳方法有time()、strtotime()。...time() 返回当前时间 Unix 时间戳,没有参数。 strtotime(time, now) 将任何英文文本日期时间描述解析为 Unix 时间戳。...time 为必填,规定要解析时间字符串;now 用来计算返回时间戳,如果省略该参数,则使用当前时间。...t – 指定月份天数; 如: “28” 至 “31” U – 总秒数 w – 数字型星期几,如: “0” (星期日) 至 “6” (星期六) Y – 年,四位数字; 如: “1999”...php获取当前时间毫秒数 php本身没有提供返回毫秒数函数,但提供了microtime()方法,它会返回一个数组,包含两个元素:一个是秒数、一个是小数表示毫秒数,我们可以通过此方法获取返回毫秒数

    6.2K20

    PHP时间函数使用详解

    PHP开发中,关于时间函数使用基本上可以说是无处不在,而PHP中操作时间方法也很多,比如PHP时间戳、日期与时间戳之间转换、获取当前日期、当前时间之前或之后时间等等,下面我们详细讲述一下PHP中各种时间函数使用...首先需要知道是在php中获取时间方法是date(),在php中获取时间戳方法有time()、strtotime()。下面分别说明。...time() 返回当前时间 Unix 时间戳,没有参数。 strtotime(time, now) 将格式化日期时间或任何英文文本日期时间描述解析为 Unix 时间戳。...– 年,二位数字; 如: “99” z – 一年中第几天; 如: “0” 至 “365” time()用法举例: time();输出结果:1418664250(返回结果即当前时间戳) strtotime...php获取当前时间毫秒数 php本身没有提供返回毫秒数函数,但提供了microtime()方法,它会返回一个数组,包含两个元素:一个是秒数、一个是小数表示毫秒数,我们可以通过此方法获取返回毫秒数

    4.9K21

    php 字符串转换时间_php 字符时间如何转换「建议收藏」

    php字符时间转换方法:1、通过phpstrtotime()”函数将任何英文文本日期时间描述解析为时间戳;2、使用php“mktime()”函数从日期取得时间戳即可。...php字符串转时间戳 PHP 提供了函数可以方便将各种形式日期转换为时间戳,该类函数主要是: strtotime():将任何英文文本日期时间描述解析为时间戳。...strtotime() strtotime() 函数用于将英文文本字符串表示日期转换为时间戳,为 date() 反函数,成功返回时间戳,否则返回 FALSE 。...mktime() 在做日期计算和验证方面很有用,它会自动计算超出范围输入正确值。例如下面例子输出都是 2008-01-01: 下个月最后一天。任何给定月份最后一天都可以被表示为下个月第 “0” 天,而不是 -1 天,如下面的例子:<?

    9.2K20

    解决PHP时间戳中月份、日期前带不带0问题

    php处理时间戳解决时间戳中月份、日期前带不带0问题 解决PHP时间戳中月份、日期前带不带0问题 有的时候网页中输出日期时间,月份和日期前有个0,总感觉是多余,今天我们就分享关于PHP时间戳中月份和日期前面显示...2、获取时间戳方法time()、strtotime() 这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime(time, now)为将时间格式转为时间戳, 3、...(此处结果为随便写,仅作说明使用) echo strtotime(date(‘Y-d-m’)),输出结果:(结合date(),结果同上)(时间日期转换为时间戳) strtotime()还有个很强大用法...5、php获取当前时间毫秒数 php本身没有提供返回毫秒数函数,但提供了microtime()方法,它会返回一个Array,包含两个元素:一个是秒数、一个是小数表示毫秒数,我们可以通过此方法获取返回毫秒数...原文链接:https://blog.csdn.net/starrykey/article/details/52572676 未经允许不得转载:肥猫博客 » 解决PHP时间戳中月份、日期前带不带0问题

    6.5K30

    php处理时间戳解决时间戳中月份、日期前带不带0问题

    php处理时间戳解决时间戳中月份、日期前带不带0问题 解决PHP时间戳中月份、日期前带不带0问题 有的时候网页中输出日期时间,月份和日期前有个0,总感觉是多余,今天我们就分享关于PHP时间戳中月份和日期前面显示...2、获取时间戳方法time()、strtotime() 这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime(time, now)为将时间格式转为时间戳, 3、...(此处结果为随便写,仅作说明使用) echo strtotime(date(‘Y-d-m’)),输出结果:(结合date(),结果同上)(时间日期转换为时间戳) strtotime()还有个很强大用法...5、php获取当前时间毫秒数 php本身没有提供返回毫秒数函数,但提供了microtime()方法,它会返回一个Array,包含两个元素:一个是秒数、一个是小数表示毫秒数,我们可以通过此方法获取返回毫秒数...未经允许不得转载:肥猫博客 » php处理时间戳解决时间戳中月份、日期前带不带0问题

    8.8K50

    php获取本年、本月、本周时间戳和日期格式实例代码

    ', strtotime("$BeginDate +1 month -1 day")); echo " "; 获取当天年份,月份,以及当月天数 echo " 本月共有:".date("t")....天"; echo " 当前年份".date('Y'); echo " 当前月份".date('m'); echo " 当前几号".date('d'); echo " "; 获取指定月份天数或者最后一天...$days." "; $days = date('t', strtotime("2011-4-1")); echo "返回2011-4天数 "....PHP Calendar 常量 par2 :参数par1选中历法中某个月 返回值: $par1 选中历法某年某月天数 PHP Calendar 常量:日历扩展包含了简化不同日历格式间转换函数...window下,已经集成了对日历扩展支持 案例中常量CAL_GREGORIAN,是PHP预定义常量,就像PHP_OS等常量 gregorian 意思:公历;阳历 总结 以上所述是小编给大家介绍

    6.6K20

    php 学习笔记之日期时间操作一箩筐

    说明 返回给定时间戳格式化后所产生日期时间字符串,如果没有给出时间戳则默认使用本地当前时间....备注 格式 说明 返回值示例 Y 4 位数字完整表示年份 2019 y 2 位数字表示年份 19 M 三个字母缩写表示月份 Jan 到 Dec m 数字表示月份,有前导零 01 到 12 D 星期中第几天...> 日期转化时间戳 time : 返回当前 Unix 时间戳 场景 获取当前日期时间或特定日期时间时间戳,常用于日期时间之间相互转换....> mktime : 取得一个日期 Unix 时间戳 场景 获取给定日期时间戳,按照"时分秒 月日年"格式依次解析,返回时间戳. 说明 根据给出参数返回 Unix 时间戳....说明 本函数预期接受一个包含美国英语日期格式字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起秒数,其值相对于 now 参数给出时间,如果没有提供此参数则用系统当前时间

    1.7K60

    PHP时间函数总结

    PHP关于时间函数可以参考这里,可以看到PHP已经提供了很多函数以供我们使用,熟练掌握这些函数可以让你摆脱冗长复杂计算,希望本文能够让你事半功倍!...[TOC] PHP时区设置 在使用PHP与时间有关时间函数时,一定要先定义时区,否则每次使用时间函数时候会显示一个Notice级别的错误。...int strtotime ( string $time [, int $now = time() ] ) 参数1:日期/时间字符串。 参数2:用来计算返回时间戳。...总结 关于时间函数就介绍到这儿,由于老高时间有限,许多有趣函数,如checkdate、date_diff都没有铺开介绍,争取日后补上。...纵观PHP在5.0版本时间函数,不难发现,PHP为我们提供了一套很简单快捷函数帮助我们处理时间,而且很多计算方法不止一种,希望大家掌握本文提供最基础函数,然后运用到实际开发中去。

    2.2K20

    php 学习笔记之日期时间操作 原

    说明 返回给定时间戳格式化后所产生日期时间字符串,如果没有给出时间戳则默认使用本地当前时间....备注 |格式|说明|返回值示例| |-|-|-| |Y|4 位数字完整表示年份|2019| |y|2 位数字表示年份|19| |M|三个字母缩写表示月份|Jan 到 Dec| |m|数字表示月份...,有前导零|01 到 12| |D|星期中第几天,文本表示,3个字母|Mon 到 Sun| |d|月份第几天,有前导零 2 位数字|01 到 31| |H|小时,24 小时格式,有前导零|00...> > mktime : 取得一个日期 Unix 时间戳 场景 获取给定日期时间戳,按照"时分秒 月日年"格式依次解析,返回时间戳. 说明 根据给出参数返回 Unix 时间戳....说明 本函数预期接受一个包含美国英语日期格式字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起秒数,其值相对于 now 参数给出时间,如果没有提供此参数则用系统当前时间

    1.9K50

    没有event loopPHP

    一,php利用socket来实现多线程 在服务器端有一个程序,与多个客户端程序通讯,其中主线程有一个socket绑定在一个固定端口上,负责监听客户端 Socket信息。...> 根据socket这种特性,写了一小段代码,并且记录下每次连接socket时间,以及不通过socket来,记录执行时间,我本意是,如果php真的能实现多线程的话,socket.log和nosocket.log...文件里面根本没有相同,感觉好像是错开。...还有启动进程,和关闭进程,都要时间,这样频繁开启,和关闭进程不见得能提高多少性能。还有pcntl只能用于php-cli,这就不用多说了,php-cgi里面根本没有httpd这个东西。...如果你装apache进修没有--enable-pcntl的话,可以用phpize来添加pcntl模块,请参考phpize增加php模块 其实也可以用top命令来看 [root@BlackGhost pcntl

    80940

    PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】

    分享给大家供大家参考,具体如下: 时间函数是PHP里面的日常函数,时间默认时期,今天、昨天、明天 、上一周、下一周,本周开始时间和结束时间;本月开始时间结束时间;上月开始时间结束时间,指定日期周一和周日等等方法...手册上有一个这个方法,用来返回指定日期周一和周日 function get_week_range($week, $year){ $timestamp = mktime(1,0,0,1,1,$year...BUG //PHP手册上有一个这个方法,用来返回指定日期周一和周日 function get_week_range2($week, $year){ $timestamp = mktime(1,0,0,1,1...),且月份为1时候,将年减1处理 if(date('m',$last_week_time) == '01' and $tmp_last_week 10){ $last_week_year--;...相关内容感兴趣读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》

    4.3K31

    php常用日期时间函数实例小结

    我在做项目的时候经常用时间戳来表示数据,这样比较方便,如果保存为日期时间型数据,显示时候可能比较省事,但是如果是获取这个日期某个年份或月份,就比较麻烦了。 <?...php echo time();//返回一个以秒为单位时间戳 :1467968841 echo microtime(true);//返回一个以毫秒为单位时间戳 :1467968841.4155 echo...microtime();//返回带毫秒和秒时间戳 :0.41553000 1467968841,前面是毫秒小数,后面是秒数 ?...php echo mktime(19,15,0,7,8,2016);//获取2016年8月7日19时15分0秒时间戳 ? 2、strtotime():将任何英文文本日期时间描述解析为时间戳 <?...php echo strtotime("2016-7-8 19:15:0");//获取2016年8月7日19时15分0秒时间戳 echo strtotime("now");//获取现在得时间戳

    4.3K31

    PHP时间戳

    PHP时间戳 UNIX 时间戳(timestamp)是 PHP 中关于时间日期一个很重要概念,它表示从 1970年1月1日 00:00:00 到当前时间秒数之和。...PHP提供了内置函数 time() 来取得服务器当前时间时间戳。 例如: <?php echo time(); ?...,如99即1999年 m 数字月份,前面有前导0,如01,n为无前导0数字月份 F 月份,完整文本格式,例如January或者March M 三个字母缩写表示月份,例如Jan或者Mar d 月份第几天...8个小时(假设您采用北京时区)的话,请检查php.ini文件,做如下设置: date.timezone = PRC 案例 计算两个时间差 $d1 = strtotime('2016-7-8')...; $d2 = strtotime('2016-7-1'); echo ($d1-$d2)/60/60/24; 习题: 如果在3分钟以内,返回:刚刚 如果在30天以内,返回:若干分钟前、若干小时前

    5.6K10

    PHP方法返回

    PHP方法返回值 不仅是PHP,大部分编程语言函数或者叫方法,都可以用return来定义方法返回值。...而计算结果是要给外部使用,这时候就要将计算结果进行返回了。...下面才是重头戏,在PHP7新特性中,返回值声明是非常亮眼一道风景。...那么定义了返回值类型声明有什么好处呢?我们在PHP方法参数那点事儿有介绍过类型声明好处,这里就不过多赘述了,不管是参数类型声明还是返回值类型声明,都是一样。...总结 我们可以看到,PHP在不断发展中一直在吸取其他语言中优秀特性。很明显,添加这些类型声明目的就是为了将来编译器做准备。这也是PHP8一个重要特性,让我们拭目以待吧!

    7.6K30

    Smarty模板变量与调节器实例详解

    Unix时间戳、mysql时间戳及由年月日组成字符串格式日期可以传递到smarty经php函数strtotime()解析。...在2.6.10版本之前,符合时间戳格式数字型字符串(如YYYYMMDD)同样可以经由php函数strtotime()处理,因为有时(取决于strtotime()底层实现)strtotime()接收日期字符串参数...%A – 当前区域星期几全称 %b – 当前区域月份简写 %B – 当前区域月份全称 %c – 当前区域首选日期时间表达 %C – 世纪值(年份除以 100 后取整,范围从 00 到...99) %d – 月份第几天,十进制数字(范围从 01 到 31) %D – 和 %m/%d/%y 一样 %e – 月份第几天,十进制数字,一位数字前会加上一个空格(范围从 ‘ 1’...到 ‘31’) %g – 和 %G 一样,但是没有世纪 %G – 4 位数年份,符合 ISO 星期数(参见 %V)。

    3.8K40

    php递归函数返回返回不出问题

    data);         return $data;     } } 控制器代码如下 var_dump(get_cat_pid($cat_parent_id,array())); 发现无论如何,函数打印结果是正确...,到return时候只能打印一个null,一直改都没法解决 后来想到了存session,存session的确解决了,但感觉非常不好 直到我度娘到了&$这个东西, 百度一下释义,说是引用变量 $b=&...return;     }else{         return;     } } get_cat_pid($cat_parent_id,$a);   var_dump($a); 解决了递归函数传值不出问题...经过了大神教诲,现在终于明白为什么会返回null了 函数return是返回给调用这个函数值,当循环两次值为0时,会返回给循环第一次本身函数,然后再返回给调用函数... 大神原话 ?...顺便把前面没有return地方改下

    4.5K20
    领券