如果字符串包含月份名称,则转换为数字

时间:2017-11-10 10:41:47

标签: php

我有一个字符串service tomcat7 start ,其中包含各种日期格式(我实际上无法控制它!),是否可以将任何月份名称更改为数字?

以下是一些格式:

  • 2020年9月14日
  • 14-FEB-2018
  • 14日至2018

是否可以将所有日期格式更改为第一个示例?

2 个答案:

答案 0 :(得分:3)

Yah by this

$new_date = date('Y-m-d',strtotime($old_date));

例如

$new_date1 = date('Y-m-d',strtotime('14-feb-2018'));
$new_date2 = date('Y-m-d',strtotime('14-march-2018'));

答案 1 :(得分:-1)

试试这个:

function convertMonthToInt( $date ) {

    $date_bits = explode( "-", $date );

    $months = array(

        "january" => 1,

        //etc etc

    );

    if( is_string( $date_bits[ 1 ] ) !== true ) {

        return $date_bits[ 1 ];

    }

    return $months[ strtolower( $date_bits[ 1 ] ) ];

};

convertMonthToInt( "14-march-2018" );