phpbar.de logo

Mailinglisten-Archive

[php] XML Attribute mit Zeilenumbruch

[php] XML Attribute mit Zeilenumbruch

Thomas Feyrer Dante_(at)_altmuehlnet.de
Fri, 29 Sep 2000 00:40:08 +0200


At 23:03 28.09.2000 +0200, Ulf Wendel wrote:
>Für die Kodierung benutze ich derzeit:
>utf8_encode(
>   preg_replace( 
>     array( "_(at)_<_(at)_", "_(at)_>_(at)_", "_(at)_'_(at)_", '_(at)_"_(at)_', "_(at)_&_(at)_", "_(at)_[\n\r]_(at)_"),
>     array("&lt;", "&gt;", "&apos;", "&quot;", "&amp;", '&#x0a;'),
>     $value
>   )
>);
>
>Zur Dekodierung wird folgendes benutzt:
>utf8_decode(
>   preg_replace( 
>    array("_(at)_&lt;_(at)_", "_(at)_&gt;_(at)_", "_(at)_&apos;_(at)_", "_(at)_&quot;_(at)_", "_(at)_&amp;_(at)_"), 
>    array("<", ">", "'", '"', "&"), 
>    $value
>   )
>);

Hi Ulf,

ich würde sagen, die Dekodierung ist falsch rum...
Denn du ersetz erst einige chars und dann encodest du,
danach ersetz du aber wieder die geänderten chars und
decodierst...
du musst erst decodieren und dann die Zeichen wieder
zurückersetzen, also:

preg_replace( 
  array("_(at)_&lt;_(at)_", "_(at)_&gt;_(at)_", "_(at)_&apos;_(at)_", "_(at)_&quot;_(at)_", "_(at)_&amp;_(at)_"), 
  array("<", ">", "'", '"', "&"), 
  utf8_decode($value)
);

Bye
 Dante



php::bar PHP Wiki   -   Listenarchive