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
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..
This is around 2.5 times slower than the first method, but should be 100% accurate.
echo date("Y-m-d",strtotime("+1 year",$mydate));
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.
This is the same as doing this..
$d = explode("-",date("n-j-Y",$mydate));
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.