Monty Burns: htmlentities() und arrays

hi

nachdem ich das ergebniss eines msysql-selects in ein array ausgelesen hab, möchte ich dieses auf einer html-seite ausgeben

nun müssen aber umlaute & co in html-codes umgewandelt werden
dafür gibt es ja die funktion "htmlentities()"
dummerweise kann man damit nur einzelne strings umwandeln

wie geh ich am besten vor wenn ich den ganzen array bearbeiten will

bis jetzt hab ich das so gelöst, das ich bei der ausgabe der einzelnen felder des array, jedesmal die funtion "htmlentities()" aufgerufen habe

denk aber mal das es eleganter wär wenn man nur einmal das ganze macht

vieleicht kann mir jemand nen tipp geben

danke im vorraus

Monty Burns

  1. hi,

    nachdem ich das ergebniss eines msysql-selects in ein array ausgelesen hab, möchte ich dieses auf einer html-seite ausgeben

    nun müssen aber umlaute & co in html-codes umgewandelt werden
    dafür gibt es ja die funktion "htmlentities()"
    dummerweise kann man damit nur einzelne strings umwandeln

    schon beim _einfügen_ in das array könntest du innerhalb der schleife htmlentities() anwenden.

    bis jetzt hab ich das so gelöst, das ich bei der ausgabe der einzelnen felder des array, jedesmal die funtion "htmlentities()" aufgerufen habe

    na ja, sowas wie foreach(), for() etc. gibt's ja auch noch ...

    gruß,
    wahsaga

    --
    I'll try being nicer if you'll try being smarter.
    1. hi,

      nachdem ich das ergebniss eines msysql-selects in ein array ausgelesen hab, möchte ich dieses auf einer html-seite ausgeben

      nun müssen aber umlaute & co in html-codes umgewandelt werden
      dafür gibt es ja die funktion "htmlentities()"
      dummerweise kann man damit nur einzelne strings umwandeln

      schon beim _einfügen_ in das array könntest du innerhalb der schleife htmlentities() anwenden.

      gute idee
      aber wie setz ich das in dem fall um?

      while ($line = mysql_fetch_array($result, MYSQL_NUM))
      {
       echo '<span class="textfett">'.$line[0].'</span> <br>';
       echo '<span class="textkursiv">'.$line[1].'</span><br>';
       echo '<span class="text">'.$line[2].'</span><br><br>';
      }

      auserdem bringt es performence-technisch nciht so viel, weil die funktion trotzdem jeden schleifendurchlauf aufgerufen werden muss

      wär hald cool wenn man einmal die funktion "htmlentities()" aufruft und dann das ganze array berarbeiten könnte

      Monty Burns

      1. hi,

        gute idee
        aber wie setz ich das in dem fall um?

        hm, ich dachte du würdest vorher _alle_ datensätze in ein array packen, und dieses später irgendwo weiterverwenden.

        while ($line = mysql_fetch_array($result, MYSQL_NUM))
        {
         echo '<span class="textfett">'.$line[0].'</span> <br>';

        nein, hier bringt das wirklich kaum was, mit foreach() o.ä. ranzugehen.

        schreib's halt einfach so hin, so tragisch ist es wirklich nicht ...

        gruß,
        wahsaga

        --
        I'll try being nicer if you'll try being smarter.
  2. Hello,

    Dein Freund könnte array_map() heißen: http://de3.php.net/manual/en/function.array-map.php

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau