Php 致命错误:调用未定义的方法DateTime::setTimestamp()
仅在一台特定服务器上获取上述错误,而不是在其他服务器上。假设这是一个php版本问题。 以下是触发错误的代码:Php 致命错误:调用未定义的方法DateTime::setTimestamp(),php,Php,仅在一台特定服务器上获取上述错误,而不是在其他服务器上。假设这是一个php版本问题。 以下是触发错误的代码: //get time interval static function get_interval($now, $post_time){ $datetime1 = new DateTime(); $datetime1->setTimestamp($now); 最后一行是导致问题的原因。有什么想法吗?如果您的PHP版本低于5.3,那么您可以使用
//get time interval
static function get_interval($now, $post_time){
$datetime1 = new DateTime();
$datetime1->setTimestamp($now);
最后一行是导致问题的原因。有什么想法吗?如果您的PHP版本低于5.3,那么您可以使用该类来使用函数“setTimestamp”和“getTimestamp”:
升级到5.3.0+?如果由于某种原因无法实现,请自己实现该方法(查看手册页面中关于该方法的第二条注释)
<?php
class MyDateTime extends DateTime
{
public function setTimestamp( $timestamp )
{
$date = getdate( ( int ) $timestamp );
$this->setDate( $date['year'] , $date['mon'] , $date['mday'] );
$this->setTime( $date['hours'] , $date['minutes'] , $date['seconds'] );
}
public function getTimestamp()
{
return $this->format( 'U' );
}
}
$date = new MyDateTime();
$date->setTimestamp( $someTimestamp );
echo $date->format( 'd/m/Y H:i:s' );
?>