PHP Locale/Zeitzone setzen

Folgende Codes wurde unter PHP 5.2.x getestet.

Setzen der Standard Zeitzone:
date_default_timezone_set('Europe/Berlin');

Ausgeben aller installierten Locales:
ob_start();
system('locale -a');
$str = ob_get_contents();
ob_end_clean();
var_dump(split("\\n", trim($str)));

Setzen einer Locale:
setlocale(LC_ALL, 'de_DE.ISO8859-15', 'de_DE.ISO8859-1', 'de_DE');
setlocale(LC_ALL, 'de_DE.UTF-8');

Ob nun UTF-8 oder UTF8 gesetzt werden muss, scheint abhängig vom eingesetzten Server zu sein.
In meinem Test musste UTF-8 gesetzt werden. Weitere Infos unter: http://de.php.net/de/setlocale

Zeichenfolgen/-mengen per Regular Expressions ausschließen

Nicht immer wird bei String-Validierungen ein Ausdruck erstellt, der nur die erlaubten Muster und Zeichen enthält. Auch anders herum ist es möglich – bestimmte Zeichenketten (?!) oder Zeichen(^) explizit ausschließen.

Zeichenfolge in einem Muster ausschließen:
.*(?!DiesesAusschliessen).*

Zeichenmenge in einem Muster ausschließen:
[^a-z0-9]

Eine Gruppierung die nicht in das Ergebnis einer Regular Expression einbezogen/selektiert werden soll, aber als Gruppierung geklammert werden muss, kann entsprechend (?:) gekennzeichnet werden:
.*(?:GruppeNichtSelekieren).*