Doc #54263 [Asn->Csd]: htmlspecialchars - charsets are not equivalent

From: Date: Thu, 17 Mar 2011 02:57:25 +0000
Subject: Doc #54263 [Asn->Csd]: htmlspecialchars - charsets are not equivalent
References: 1  Groups: php.doc.bugs 
Request: Send a blank email to doc-bugs+get-6091@lists.php.net to get a copy of this message
Edit report at http://bugs.php.net/bug.php?id=54263&edit=1 ID: 54263 Updated by: aharvey@php.net Reported by: anthon dot pang at gmail dot com Summary: htmlspecialchars - charsets are not equivalent -Status: Assigned +Status: Closed Type: Documentation Problem Package: Documentation problem PHP Version: 5.3.5 Assigned To: aharvey Block user comment: N Private report: N New Comment: This bug has been fixed in the documentation's XML sources. Since the online and downloadable versions of the documentation need some time to get updated, we would like to ask you to be a bit patient. Thank you for the report, and for helping us make our documentation better. Previous Comments: ------------------------------------------------------------------------ [2011-03-17 03:57:22] aharvey@php.net Automatic comment from SVN on behalf of aharvey Revision: http://svn.php.net/viewvc/?view=revision&revision=309322 Log: Fix doc bug #54263 (htmlspecialchars - charsets are not equivalent). ------------------------------------------------------------------------ [2011-03-16 03:35:46] anthon dot pang at gmail dot com Description: ------------ --- From manual page: http://www.php.net/function.htmlspecialchars#Parameters --- For the purposes of this function, the charsets ISO-8859-1, ISO-8859-15, UTF-8, cp866, cp1251, cp1252, and KOI8-R are effectively equivalent, as the characters affected by htmlspecialchars() occupy the same positions in all of these charsets. --- This is misleading. (The paragraph was introduced by #49412.) Example: var_dump( htmlspecialchars( "\xe8", ENT_QUOTES, 'UTF-8' ) ) returns: PHP 5.2.1: string(1) "�" but in later versions: PHP 5.2.6: string(0) "" PHP 5.3.5: string(0) "" Test script: --------------- echo htmlspecialchars( "\xe8", ENT_QUOTES, 'UTF-8' ); Expected result: ---------------- I suggest removing the aforementioned paragraph from the manpage, and add a note under Changelog or Return Values, stating that, as of php 5.2.5 (judging from php.net/ChangeLog-5.php), the function can return an empty string if there are invalid byte sequences for the specified charset. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=54263&edit=1

« previous php.doc.bugs (#6091) next »