si quieres hacerlo desde mysql, puedes usar DATEDIFF():
Código PHP:
//
DATEDIFF(expr,expr2)
DATEDIFF() returns the number of days between the start date expr and the end date expr2. expr and expr2 are date or date-and-time expressions. Only the date parts of the values are used in the calculation.
mysql> SELECT DATEDIFF('1997-12-31','1997-12-30');
-> 1
mysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');
-> -31
te devuelve el resultado en dias y de ahi lo divides entre los dias del ano, cya