You are here: Re: strange behaviour: preg_replace with /e modifier and str_replace « PHP Programming Language « IT news, forums, messages
Re: strange behaviour: preg_replace with /e modifier and str_replace

Posted by petersprc on 05/28/07 08:34

You could try something like:

"strtr('$0', array('\\\"' => '\"', '\'' => '\"'))"

instead. That is known behavior of the /e modifier...

On May 28, 2:18 am, "amygdala" <nore...@noreply.com> wrote:
> Hi there,
>
> I'm trying to replace single quoted attributes in HTML tags with double
> quotes. What I've come up with is this:
>
> function replaceSingleQuotesInsideTags( $input )
> {
> $output = preg_replace(
> '/<[^>]*>/e',
> "str_replace( '\'', '\"', '$0' )",
> $input
> );
> return $output;
>
> }
>
> So let's say I have this string of HTML code:
>
> On <A href="/home/" target="_self">this</A> page you will find <SPAN
> STYLE='font-style: italic'>stuff</SPAN>
>
> Result:
> On <A href=\"/home/\" target=\"_self\">this</A> page you will find <SPAN
> STYLE="font-style: italic">stuff</SPAN>
>
> As you can see, when I run it through my function
> replaceSingleQuotesInsideTags, not only does it replace the single quotes
> with double quotes, but it also adds backslashes before double quotes that
> were already present. This is unexpected behaviour to me.
>
> Expected result:
> On <A href="/home/" target="_self">this</A> page you will find <SPAN
> STYLE="font-style: italic">stuff</SPAN>
>
> Note the missing backslashes in the anchor tag attributes.
>
> Does anybody have an idea of what is going on here?
>
> Working with PHP 5.1.4, magic_quotes (all) off.
>
> Thank you in advance.

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация