Добавить метод modify() для класса DateTime в D7

Рейтинг: 4.8850  
Новая
Предложил Пользователь 21978 19.10.2014 03:51:53

Добавить метод modify() для класса DateTime в D7

Прошу добавить метод modify(), наследуемый от \DateTime в
\Bitrix\Main\Type\Date (\bitrix\modules\main\lib\type\date.php)

Рейтинг: 0  
Пользователь 21978 19.10.2014 03:56:41
И sub() в добавок..
Рейтинг: 0.0848  
Пользователь 9700 19.10.2014 05:57:48
есть метод add(), он покрывает необходимость в sub() \ modify()
Рейтинг: 1  
Пользователь 185101 16.12.2015 19:43:44
Kryachek Mikhail 19.10.2014 05:57:48
есть метод add(), он покрывает необходимость в sub() \ modify()
А в методе add можно получить например следующий понедельник?
(new \DateTime())->modify('next monday');

Я понимаю, что можно извратиться и написать так
\Bitrix\Main\Type\Date::createFromTimestamp(strtotime('next monday'));
\Bitrix\Main\Type\Date::createFromPhp((new \DateTime())->modify('next monday'));
Но если у тебя уже есть объект, то неполучится просто так получить.
Метод add работает только с Интервалами.
Например $date->add('P1D'); Добавить 1 день
Проще просто добавить метод modify()
Рейтинг: 0.0623  
Пользователь 60615 12.01.2016 03:15:55
Как временное решение можно создать свой класс наследник

namespace My\Company;
use \Bitrix\Main;

class DateTime extends Main\Type\DateTime{
    public function modify($modify){
        $this->value->modify($modify);
    }
}