tegenovergestelde van htmlspecialchars

Pagina: 1
Acties:

  • Speedener
  • Registratie: September 2000
  • Laatst online: 31-08 08:11
Ik gebruik op een site htmlspecialchars maar nu wil ik het als het uit de db gelezen word weer omkeren, omdat ik er een highlight_string doorheen wil laten gaan, is er een undo-htmlspecialchars of een andere ioplossing?

Verwijderd

Da is niet echt nodig, want het enige wat htmlspecialchars doet is bv een &-teken omzetten in & en dat beschouwd je browser als een &-teken.

Zie hier

[ Voor 0% gewijzigd door Verwijderd op 20-08-2002 01:19 . Reden: url ]


  • Speedener
  • Registratie: September 2000
  • Laatst online: 31-08 08:11
Verwijderd schreef op 20 augustus 2002 @ 01:18:
Da is niet echt nodig, want het enige wat htmlspecialchars doet is bv een &-teken omzetten in & en dat beschouwd je browser als een &-teken.

Zie hier
jah maar de highlight_string functie van php niet

Verwijderd

euhm, str_replace ofzo, of ander van die regexp-dinges??
Er is voorzover ik weet geen "undo"-funtie voor htmlspecialchars, waarschijnlijk om de reden die ik aangegeven heb

  • WouZz
  • Registratie: Mei 2000
  • Niet online

WouZz

Elvis is alive!

Uit de user-notes:
PHP:
1
$text = str_replace(array("&gt;", "&lt;", "&quot;", "&amp;"), array(">", "<", "\"", "&"), $text);

On track


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 07:40
Uit de user comments bij de manual op php.net:
Just for the other lazy ppl out there - heres a reverse function:
PHP:
1
2
3
4
$text=ereg_replace("&gt;", ">", $text);
$text=ereg_replace("&lt;", "<", $text);
$text=ereg_replace("&quot;", "\"", $text);
$text=ereg_replace("&amp;", "&", $text);


OR:
PHP:
1
2
3
4
5
$plaintext=
    ereg_replace("&amp;", "&",
        ereg_replace("&quot;", "\"",
            ereg_replace("&lt;", "<",
                ereg_replace("&gt;", ">", $htmltext))));
Actually, if you're using >= 4.0.5, this should theoretically be quicker (less overhead anyway):

PHP:
1
$text = str_replace(array("&gt;", "&lt;", "&quot;", "&amp;"), array(">", "<", "\"", "&"), $text);
Dat was niet zo moeilijk hoor.

Ik snap trouwens niet wat het punt van Grote Vos is.

[ Voor 0% gewijzigd door Soultaker op 20-08-2002 01:56 . Reden: PHP-tags toegevoegd ]


  • Rense Klinkenberg
  • Registratie: November 2000
  • Laatst online: 09-08 19:19
Uit wat andere users notes van get_html_translation_table():
PHP:
1
2
3
4
5
6
function unhtmlentities ($string) {
    $trans_tbl = get_html_translation_table(HTML_ENTITIES);
    $trans_tbl = array_flip($trans_tbl);
    $ret = strtr($string, $trans_tbl);
    return preg_replace('/\&\#([0-9]+)\;/me', "chr('\\1')",$ret);
}


edit: React maakt een beetje een puinhoop van de qoutes, dus als je de werkende functie wil hebben, zal je het even via quote moeten doen.
Pagina: 1