Re: ENT_ALL or similar option for htmlspecialchars[_decode]?

From: Date: Fri, 28 Jun 2013 02:54:41 +0000
Subject: Re: ENT_ALL or similar option for htmlspecialchars[_decode]?
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to [email protected] to get a copy of this message
On Thu, Jun 27, 2013 at 4:42 PM, Kris Craig <[email protected]> wrote:

> On Thu, Jun 27, 2013 at 12:03 AM, Yasuo Ohgaki <[email protected]> wrote:
>
> >
> > 2013/6/27 Kris Craig <[email protected]>
> >
> >> I just noticed that htmlspecialchars_decode doesn't convert entities
> like
> >> &#10 and &#13.
> >>
> >
> > I think htmlspecialchars_decode() only decodes
> >
> > ext/standard/html_tables.h
> > static const entity_stage3_row stage3_table_be_apos_00000[] = {
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"quot", 4} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"amp", 3} } }, {0, {
> > {"apos", 4} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> >  {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, {
> > {NULL, 0} } },
> > {0, { {"lt", 2} } }, {0, { {NULL, 0} } }, {0, { {"gt", 2} } }, {0, {
> > {NULL, 0} } },
> > };
> >
> > IIRC
> > I may be wrong.
> >
> >
> >> Is there a bitmask I'm missing or are those simply not
> >> supported right now?  If the latter, any thoughts on adding something
> >> along
> >> the lines of ENT_ALL to convert all valid entities from/to their
> >> respective
> >> characters?
> >>
> >
> > What you are looking for is html_entity_decode(), I think.
> >
> > $ php -n -r 'var_dump(html_entity_decode("&#10;&#61;"));'
> > string(2) "
> > ="
> >
> >
> Yeah I tried html_entity_decode already, but it just returned NULL.  On the
> same input string, htmlspecialchars_decode returned the input string but
> with *some* special characters decoded; 10 and 13 ("\r\n", I think) were
> left in their encoded state.  I'm not sure why there wouldn't be an option
> to decode all html special characters.
>

The html_entity_decode() function shouldn't return NULL, but even an empty
string sounds like a bug, could you file a report for this and provide a
reproducible test code?



>
> --Kris
>



-- 
--
Tjerk


Thread (10 messages)

« previous php.internals (#67993) next »