Функция, на входе: "P1D", на выходе "1 days".Задай вопрос нормально.
Чего именно ты хочешь достичь?
Существуют. Тебе библиотеку, сайт или приложение десктопное?Существуют ли уже инструменты преобразования из одного вида в другой?
Мне библиотеку.Тебе библиотеку
Мне неохота руками менять формат интервалов класса DateInterval в формат интервалов класса DateTime и наоборот - там, где это должен делать код.Например: «мне сложно вводить интервал в формате ISO 8601, я хочу проще».
Зачем вообще это делать?… Голову включи и ответь уже на вопрос.Мне неохота руками менять формат интервалов класса DateInterval в формат интервалов класса DateTime и наоборот - там, где это должен делать код.
Такой проблемы нет. $date->add(new DateInterval(...)), $date->add(DateInterval::createFromDateString('1 day'));Мне неохота руками менять формат интервалов класса DateInterval в формат интервалов класса DateTime и наоборот - там, где это должен делать код.
Конечно, конечно.Такой проблемы нет. $date->add(new DateInterval(...)), $date->add(DateInterval::createFromDateString('1 day'));
Ты борешься с какой-то несуществующей проблемой.
Это не нужно.На выходе - "+1 days"
new DateInterval("P1D");
DateInterval::createFromDateString('+1 day')
$interval = new DateInterval('P2Y4DT6H8M');
echo $interval->format('%d days');
$date = new \DateTime('2015-05-23 00:10:20');
echo $date->format("Y-m-d H:i:s\n");
// барабанная дробь!
$date->add(new DateInterval('P1D'));
echo $date->format("Y-m-d H:i:s\n");
2015-05-23 00:10:20
2015-05-24 00:10:20