Wenn kennt das nicht?:

  • Zeichensatzfehler
  • Angepasste Suchanfragen wegen Umlauten im Suchstring
  • Datenformatierung für SQL-Abfragen und deren Darstellung
  • etc.

Neulich (Ich bin erst seit Mitte August dabei) musste ich Daten mit ausgeschriebenen Tagen und Monaten verwenden. Die Darstellung dieser Daten war natürlich auf Deutsch.
Ich suchte nach einer generische Lösung in PHP, welche ich später wieder verwenden konnte und wurde hier fündig.

Die von mir erweiterte Version sieht so aus:

<?php
class DateTimeGerman extends DateTime {
    public function format($format) {

        $english = array('Monday', 'Tuesday', 'Wednesday', 
        	'Thursday', 'Friday', 'Saturday', 'Sunday',
			'January','February','March','April','May',
			'June','July','August','September','October',
			'Novemer','December');

        $german = array('Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 
        	'Freitag', 'Samstag', 'Sonntag',
			'Januar','Februar','März','April',
			'Mai','Juni','Juli','August','September',
			'Oktober','November','Dezember');

        return str_replace($english, $german, parent::format($format));
    }
}
$gDate = new DateTimeGerman("16.7.2013");
$date  = new DateTime("16.07.2013");

echo $gDate->format("l"); //Output: Dienstag
echo $gDate->format("F"); //Output: Juli

echo $date->format("l"); //Output: Tuesday
echo $date->format("F"); //Output: July
?>

P.S. Die Format-Methode unterstützt alle Formate  der alten date-Funktion.