Какую версию PHP вы используете?Какова ваша date.timezone
настройка?Я спрашиваю, потому что я не могу воспроизвести ваш вывод с PHP 5.3.6 в Mac OS X:
$str_date = 'Fri Sep 02 2011 21:00:00 GMT+0100 (GMT Daylight Time)';
echo $str_date," Vs ",date("c",strtotime($str_date));
// Fri Sep 02 2011 21:00:00 GMT+0100 (GMT Daylight Time) Vs 1970-01-01T01:00:00+01:00
Это правильно, потому что Fri Sep 02 2011 21:00:00 GMT+0100 (GMT Daylight Time)
не является допустимой строкой даты / времени.
$str_date = 'Fri Sep 02 2011 21:00:00 GMT+0100';
echo $str_date," Vs ",date("c",strtotime($str_date));
// Fri Sep 02 2011 21:00:00 GMT+0100 Vs 2011-09-02T22:00:00+02:00
Это правильно, потому что я в GMT + 2.