From 08443590ff636741e952d1df060cfc927b2bde32 Mon Sep 17 00:00:00 2001 From: Jakub Vrana Date: Mon, 11 Jul 2005 08:33:42 +0000 Subject: [PATCH] Replace numeric entities in userland function (spotted by Goba) git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@190478 c90b9560-bf6c-de11-be94-00142212c4b1 --- reference/strings/functions/html-entity-decode.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/reference/strings/functions/html-entity-decode.xml b/reference/strings/functions/html-entity-decode.xml index 07997bd545..f44516e72f 100644 --- a/reference/strings/functions/html-entity-decode.xml +++ b/reference/strings/functions/html-entity-decode.xml @@ -1,5 +1,5 @@ - + @@ -78,6 +78,10 @@ echo $b; // I'll "walk" the dog now // For users prior to PHP 4.3.0 you may do this: function unhtmlentities($string) { + // replace numeric entities + $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string); + $string = preg_replace('~&#([0-9]+);~e', 'chr(\\1)', $string); + // replace literal entities $trans_tbl = get_html_translation_table(HTML_ENTITIES); $trans_tbl = array_flip($trans_tbl); return strtr($string, $trans_tbl);