Funktion zum Maskieren von E-Mail-Adressen

Nachdem ich nach 30 Minuten googeln nichts Vernünftiges fand, habe ich mich mal wieder lernend mit Php beschäftigt und diese kleine Funktion gebaut:

function mailreplace($str) {
    return preg_replace_callback ('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})^',
        create_function (
            '$str',
            'for ($i = 0; $i < strlen($str[0]); $i++) {
                $result .= "&#" . ord(substr($str[0], $i, 1)) . ";";
            };
            return $result;'
        ), 
    $str);
}

Wie man sieht, sucht die Funktion in einem String nach E-Mail-Adressen und ersetzt deren Zeichen durch ihre ASCII-Entsprechungen. Einzige Unklarheit war, daß der Suchtreffer der temporären Funktion als Array übergeben wird, dessen erstes Element die Mail-Adresse beinhaltet. Warum der Treffer nicht als String übergeben wird – keine Ahnung.

»

Your comment

HTML-Tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

^ Zum Seitenanfang

Neueste Bookmarks (Delicious)