致命错误:在布尔值上调用成员函数format()

时间:2017-08-02 19:51:17

标签: php wordpress

我在wordpress上的预订无效 它说 致命错误:在...

中的布尔值上调用成员函数format()

并说我去这行存档

public static function convert_date_to_mdY( $date_string, $date_format = null ) {
    if ( ! $date_format ) {
        $date_format = AWE_function::get_current_date_format();
    }

    if ( 'm/d/Y' == $date_format ) {
        return $date_string;
    }

    $d = DateTime::createFromFormat( $date_format, $date_string );
    return $d->format( 'm/d/Y' );
}

问题是什么?

2 个答案:

答案 0 :(得分:4)

DateTime::createFromFormat()返回false,表示无法根据提供的值创建DateTime。代码没有错误检查返回值。

应该是错误检查,但是可能来自GUI中设置的某些参数可能不正确,并且纠正它们可能会解决问题。如果可能,请检查日期格式和提供的$ date_string。

答案 1 :(得分:0)

如果抛入其中的值具有不同于DateTime的格式,则DateTime :: createFromFormat()可能无法创建DateTime。

例如,如果任何TEXT或STRING作为其值被抛入其中,那么它将产生错误。

日期由'分隔。'或者通过' - '或者通过' /'。 时间由':'。

分隔

这构成了DateTime的基本格式。

使用IF条件检查是否为其提供了与DATETIME FORMAT不同的NULL值或TEXT值。

此外,应检查type变量。 另外,如果给定的变量是object,应该检查它? 此外,格式应来自以下: -

w3schools - > func_date_date_format

谢谢, 萨库马尔