preg_replace mit RegEx bei Bildnamen

Dustin84

Erfahrenes Mitglied
Hallo,

ich gebe Usern die Möglichkeit Bilder hochzuladen.
Nun möchte ich beim uploaden den Bildnamen auf Sonderzeichen, Leerzeichen und Punkte prüfen und automatisch ändern.

So soll aus "Schloß Öster.reich" "Schloss_Oesterreich" werden.

Wie mache ich das am besten?

Gruß
D.
 
Ja, habe gerade was gefunden. Das werde ich gleich mal testen und es soll auch performanter als preg_replace sein.

PHP:
$search = array('ä', 'ö');
$replace = array('ae', 'oe');

$text = "Hällö!";

echo str_replace($search, $replace, $text);
 
Diese Funktion wird dir helfen:
PHP:
function DateiNameSaubern($str){
    $str = strtr($str,
        "Y¥µÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäå æçèéêëìíîïðñòóôõöøùúûüýÿ",
        "YYuAAAAAAACEEEEIIIIDNOOOOOOUUUUYsaaaaaaaceeeeiiiionoooooouuuuyy");
    $str = ereg_replace("[^a-z0-9._]", "", str_replace(" ", "_",
    str_replace("%20", "_", strtolower($str))));
    
    return $str;
}
 
Zurück