Umlaute ändern, spitze Klammern erhalten

  • Hallo Dynamiker. :)

    Ich bastele gerade an einer Webseite und bin dabei, soz. "the beauty of PHP" zu entdecken. ;)
    Ich bekomme von einem Kumpel Texte im Word-Format, speichere die in Word als HTML, kopiere den relevanten Teil heraus, speichere diesen als TXT. Das Problem ist, dass der Text Auszeichnungen enthält, wie z.B. "<class=irgendwas>". htmlentities konvertiert nun leider auch die spitzen Klammern. Deshalb verwurste ich die Textdateien wie folgt:

    PHP
    1. <?php
    2. $str = file_get_contents ("Textfiles/IndexEinleitung.txt");
    3. $ausgabe = htmlentities($str, ENT_NOQUOTES);
    4. $ausgabeEND = str_replace(array("&lt;","&gt;"),array("<",">"),$ausgabe);
    5. echo $ausgabeEND;
    6. ?>


    Es funktioniert so, aber es würde mich interessieren, was Ihr Profis zu diesem Codeschnipsel sagt. Also eher "ok" oder doch "von hinten durch's Knie ins Auge ...". Ich habe z.B. irgendwie das Gefühl, dass ich hier einen Variablen-Overkill betreibe.

    Wolfgang


  • Hab so eine ähnliche Funktion mal geschrieben:


    PHP
    1. /***********************************************************************
    2. Wandle Sonderzeichen in HTML Code um
    3. ***********************************************************************/
    4. function replace_html($content) {
    5. $source = array('&lt;','&gt;',"&quot;","&amp;","'");
    6. $html = array('<','>',"\"","&","'");
    7. $content = str_replace($source,$html,htmlentities(stripslashes($content), ENT_QUOTES, 'UTF-8'));
    8. return $content;
    9. }


    Im Grunde ja fast das selbe ;)


    mfg campy