$ date
Fri Sep 14 12:48:47 EST 2007

$ php -r "echo date('Y-m-d H:i:s', strtotime('Friday'));"
2007-09-14 00:00:00

$ php -r "echo date('Y-m-d H:i:s', strtotime('next Friday'));"
2007-09-21 00:00:00

$ date -d "Friday"
Fri Sep 14 00:00:00 EST 2007

$ date -d "next Friday"
Fri Sep 14 00:00:00 EST 2007

My first thought was that PHP was a POS, but according to the documentation on GNU.org (which is the same as ‘info date’) ‘date’ seems to be incorrect.

A number may precede a day of the week item to move forward supplementary weeks. It is best used in expression like `third monday’. In this context, `last day’ or `next day’ is also acceptable; they move one week before or after the day that day by itself would represent.