我正在尝试将字符串转换为日期。具体来说,一年的约会。
strtotime('2017') // Gives us -> 1517372220
$year = '2017';
var_dump($year); // '2017'
$year = date("Y", strtotime($year));
var_dump($year); // '2018' 为什么date方法默认为当前时间?我正在传递一个整数。
根据文档,我似乎正确地实现了这个方法?
字符串日期( string $format,int $timestamp = time() ) 可选时间戳参数是一个整数Unix时间戳,如果没有给出时间戳,该时间戳默认为当前本地时间。换句话说,它默认为time()的值。
发布于 2018-01-31 04:34:57
基于标准时间()手册
strtotime -将任何英文文本日期时间描述解析为Unix时间戳
参数 time-> 日期/时间字符串。有效格式以日期和时间格式解释。
因此,您需要提供文本表示或有效的日期格式(不仅仅是年份)。
所以代码应该是这样的-
<?php
$year = date("Y", strtotime('2017-01-01'));
var_dump($year); // '2018' 参考资料:- strtotime()的有效格式
https://stackoverflow.com/questions/48534452
复制相似问题