php怎么把字符串转换成date

不及物动词 其他 275

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,可以使用date()函数将字符串转换为日期(date)格式。该函数的语法如下:

    date(string $format, int $timestamp = time()) : string

    其中,$format参数表示日期格式化的模板,$timestamp参数表示要进行格式化的时间戳。如果未提供$timestamp参数,默认使用当前的时间戳。

    例如,假设有一个字符串变量$datetime包含了一个日期时间字符串,如”2022-01-15 10:30:00″,我们想将它转换成日期(date)格式,并以”Y-m-d H:i:s”的格式输出,可以使用以下代码:

    “`php
    $datetime = “2022-01-15 10:30:00”;
    $date = date(“Y-m-d H:i:s”, strtotime($datetime));
    echo $date;
    “`

    执行以上代码,将输出结果为:”2022-01-15 10:30:00″。这里使用了strtotime()函数将字符串转换为时间戳,然后再使用date()函数将时间戳转换为日期格式。

    除了使用strtotime()函数,还可以使用DateTime类来实现字符串到日期的转换。以下是基于DateTime类的示例代码:

    “`php
    $datetime = “2022-01-15 10:30:00”;
    $date = DateTime::createFromFormat(“Y-m-d H:i:s”, $datetime);
    echo $date->format(“Y-m-d H:i:s”);
    “`

    执行以上代码同样可以得到输出结果为:”2022-01-15 10:30:00″。在这个示例中,使用createFromFormat()方法将字符串转换为DateTime对象,然后使用format()方法以指定的日期格式输出。通过这种方式,可以更加灵活地控制日期的格式化过程。

    综上所述,PHP中可以使用date()函数或DateTime类来将字符串转换为日期格式。具体选择哪种方式取决于个人需求和喜好。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    将字符串转换为日期需要使用PHP的日期时间函数。下面是一些常用的方法:

    1. 使用strtotime()函数:strtotime()函数可以将一个字符串转换为UNIX时间戳,然后可以使用date()函数将UNIX时间戳转换为日期格式。例如:

    “`php
    $string = “2020-12-31”;
    $date = date(“Y-m-d”, strtotime($string));
    echo $date; // 输出:2020-12-31
    “`

    2. 使用date_create()和date_format()函数:date_create()函数可以将一个字符串转换为日期时间对象,然后可以使用date_format()函数将日期时间对象格式化为字符串。例如:

    “`php
    $string = “2020-12-31”;
    $date = date_create($string);
    $formatted_date = date_format($date, “Y-m-d”);
    echo $formatted_date; // 输出:2020-12-31
    “`

    3. 使用DateTime类:PHP的DateTime类提供了更多的日期时间操作方法。可以使用DateTime类的createFromFormat()方法将字符串转换为日期时间对象,然后使用format()方法将日期时间对象格式化为字符串。例如:

    “`php
    $string = “2020-12-31”;
    $date = DateTime::createFromFormat(“Y-m-d”, $string);
    $formatted_date = $date->format(“Y-m-d”);
    echo $formatted_date; // 输出:2020-12-31
    “`

    4. 使用strptime()函数:strptime()函数可以将一个字符串解析为日期时间数组,然后可以使用mktime()函数将日期时间数组转换为UNIX时间戳,最后使用date()函数将UNIX时间戳转换为日期格式。例如:

    “`php
    $string = “2020-12-31”;
    $datetime_array = strptime($string, “%Y-%m-%d”);
    $timestamp = mktime(0, 0, 0, $datetime_array[‘tm_mon’]+1, $datetime_array[‘tm_mday’], $datetime_array[‘tm_year’]+1900);
    $date = date(“Y-m-d”, $timestamp);
    echo $date; // 输出:2020-12-31
    “`

    5. 使用正则表达式:如果字符串的格式不是标准的日期格式,可以使用正则表达式将其转换为日期格式。例如:

    “`php
    $string = “31-12-2020”;
    $pattern = “/(\d{2})-(\d{2})-(\d{4})/”;
    $replacement = “$3-$2-$1”;
    $date = preg_replace($pattern, $replacement, $string);
    echo $date; // 输出:2020-12-31
    “`

    这些方法只是PHP中将字符串转换为日期的几种常用方法之一,根据具体的需求和字符串格式,可能会有其他更适合的方法。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,你可以使用strtotime()函数或者DateTime::createFromFormat()方法将字符串转换为日期。

    一、使用strtotime()函数

    strtotime()函数是一个内置函数,它可以将人类可读的时间格式转换为UNIX时间戳。UNIX时间戳是从1970年1月1日开始到现在的秒数。

    语法:
    strtotime(string $time, int $now = time()): int|false

    参数说明:
    $time:要转换的时间字符串。
    $now:可选参数,如果不提供该参数,则默认使用当前时间。该参数的值用于确定strtotime()所返回的时间值的基准。

    示例代码:

    “`php
    $string = “2021-01-01”;
    $date = strtotime($string);
    echo $date; // 输出1609459200
    “`

    二、使用DateTime::createFromFormat()方法

    DateTime类是PHP 5.2版本引入的一个日期和时间处理类。DateTime::createFromFormat()方法可以根据给定的格式解析日期时间字符串,并返回一个DateTime对象。

    语法:
    DateTime::createFromFormat($format, $time, $timezone = null): DateTime|false

    参数说明:
    $format:日期时间字符串的格式,使用与date()函数相同的格式。
    $time:要转换的时间字符串。
    $timezone:可选参数,用于设置DateTime对象的时区。

    示例代码:

    “`php
    $string = “2021-01-01”;
    $date = DateTime::createFromFormat(‘Y-m-d’, $string);
    echo $date->format(‘Y-m-d’); // 输出2021-01-01
    “`

    在上面的示例中,我们使用Y-m-d作为格式来解析日期字符串”2021-01-01″,然后使用format()方法将DateTime对象格式化为”Y-m-d”的字符串形式。

    以上就是使用strtotime()函数和DateTime::createFromFormat()方法将字符串转换为日期的方法。根据你的具体需求选择适合的方法即可。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部