* Thus wrote Pablo Gosse: > > if ($mode == 1) { > $html = htmlentities($html, ENT_QUOTES); > } else { > $trans_tbl = get_html_translation_table(HTML_ENTITIES, > ENT_QUOTES); > $trans_tbl = array_flip($trans_tbl); > $html = strtr($html, $trans_tbl); > } > return $html; > } > > ... > > Can anyone give me an idea as to why single quotes are not being > translated here?
If you look at $trans_tbl["'"] You'll see that it equals ' instead of '. > > I've fixed the problem simply by adding a str_replace() call to replace > all instances of ' with ' before returning the $html variable in > the decode function, but I really want to know why it's not working > properly. Two other ways: - Set $trans_tbl["'"] = '''; before you flip the arrray. or - use the translation table instead of htmlentities: $trans_tbl = get_html_translation_table(HTML_ENTITIES, ENT_QUOTES); if ($mode != 1) { $trans_tbl = array_flip($trans_tbl); } $html = strtr($html, $trans_tbl); Curt -- First, let me assure you that this is not one of those shady pyramid schemes you've been hearing about. No, sir. Our model is the trapezoid! -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php