I was mainly using date for things like added, updated and anniversary dates in MySQL...?
Since MySQL has it's own date type, a lot of those -- like if you want "right now" -- you should be using NOW() in your SQL with a date field.
updated = NOW()
WHERE id = ?
For example. Unless you're doing date math -- and even then -- dates aren't even your PHP's job when dealing with mysql apart from turning form input into something compatible with mysql dates, or turning the date from mysql into markup formatting... which is when the normal "date" function is fine and dandy.
But like anniversaries, you want to add a year, do it in the query. You want to pull something that happened on the same day and month, use DAY() and MONTH() or DAYOFMONTH() in the query.