Depends on what you have for a current date.
You could transform whatever you have into a unix-timestamp,
then add the required number of seconds for your interval, and transform the timestamp back into a readable format.
Note: this way you will get a few difficulties with the definition of 'one month'
For example, January is 31 days, but February is only 28 and sometimes it's 29.
And years aren't always 365 days....