I've done a little test to see what would be the fastest way to do this. The quickest, and least accurate way to do it would be to simply add a year to the date.
365.25*24*60*60 = 31557600 (~seconds in a year)
So you could just do
PHP Code:
echo date("Y-m-d",$mydate+31557600);
This isn't 100% accurate, but it uses the least amount of processing, I don't know how accurate you need it to be.
The second way you can do this (quickly and accurately) is using the strtotime function. Something like this..
PHP Code:
echo date("Y-m-d",strtotime("+1 year",$mydate));
This is around 2.5 times slower than the first method, but should be 100% accurate.
The third method is using mktime. This is about 3 times slower than the first method.
First you get the month, day and year from your time stamp, then you plug them into mktime, adding 1 to the year.
PHP Code:
$d = explode("-",date("n-j-Y",$mydate));
echo date("Y-m-d",mktime(0,0,0,$d[0],$d[1],$d[2]+1));
This is the same as doing this..
PHP Code:
echo date("Y-m-d",mktime(0,0,0,date("n",$mydate),date("j",$mydate),date("Y",$mydate)+1));
Except by using an array to hold the values php only has to process one date function instead of 3 inside of mktime, this makes it roughly twice as fast.