PHP将字符串转换为日期时间

时间:2017-10-18 05:11:47

标签: php string time timestamp

我有一个来自db的php字符串它是20/11/2017我想转换它毫秒。 这是我的代码。

$the_date = "20/11/2017";
$mill_sec_date = strtotime($the_date);
var_dump($mill_sec_date);

但它不打印任何东西而不是

bool(false);

问题是什么?如何解决????

5 个答案:

答案 0 :(得分:2)

使用斜杠分隔日期的各个部分时,PHP会将格式识别为MM / DD / YYYY。这使得您的日期无效,因为没有20个月。如果要使用交换日期和月份的格式,则需要使用连字符,如DD-MM-YYYY。

答案 1 :(得分:1)

$time = strtotime('10/16/2003');

$newformat = date('Y-m-d',$time);
print_r($newformat);

答案 2 :(得分:0)

使用DateTime类调用函数createFromFormat

db_from_env = dj_database_url.config()
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
DATABASES['default'].update(db_from_env)

答案 3 :(得分:0)

很可能你的日期格式错了,请参阅 here获取支持的日期和时间格式列表:

  

本节介绍strtotime(),DateTime和date_create()解析器理解的所有不同格式。

答案 4 :(得分:0)

你的字符串不被strtotime接受,你可以使用createFromFormat设置设置与时间字符串的格式类型如下,你也可以检查 live demo 。你也可以参考这个answer

var_dump(DateTime::createFromFormat('d/m/Y', "20/11/2017"));