0
Answered
В чем смысл корректирующего конструктора?
// Local extension class.
class MyNewDate extends DateTime {
public function __construct() {
$args = func_get_args();
if (isset($args[0]) && is_a($args[0], 'DateTime')) {
call_user_func_array(array($this, 'parent::__construct'), $args[0]->format('Y-m-d H:i:s'));
}
else {
call_user_func_array(array($this, 'parent::__construct'), $args);
}
}
public function nextWeek() {
return $this->modify('+7 days');
}
}
В чем смысл этого конструктора? Зачем в него передавать класс DateTime? Если мы уберем конструктор, то наш метод будет также работать и наш класс MyNewDate можно передавать как параметр туда где использовался DateTime так как наш класс наследует от DateTime
Answer
Answer
Answered
Смысл в том, чтобы инициализировать новый объект уже существующим объектом DateTime, если он у вас есть. К примеру, если такой объект пришел к вам из сторонней функции.
Стандартный класс DateTime пока еще нельзя инициализировать другим объектом DateTime.
Customer support service by UserEcho
Смысл в том, чтобы инициализировать новый объект уже существующим объектом DateTime, если он у вас есть. К примеру, если такой объект пришел к вам из сторонней функции.
Стандартный класс DateTime пока еще нельзя инициализировать другим объектом DateTime.