Exact Weeks and Months beetween dates

Example:
 2014-06-18 & 2014-05-27 have 2 elapsed weeks (1 completed and start
 another), but only 1 complete week.


It's probably not the best implementation though... any sugestions?