# Problem mit htmlentities



## ciubic (1. Oktober 2007)

Hallo,

Ich habe seit neuestem ein Problem:


```
echo htmlentities("Ä-Ö-Ü-ä-ö-ü");
```

gibt mir nicht:


```
&Auml;-&Ouml;-.....
```


aus sondern:


```
&Atilde;?-&Atilde;?-&Atilde;?-&Atilde;&curren;-&Atilde;&para;-&Atilde;&frac14;       	&Atilde;&pound;
```

aus

Kann mir jemand sagen was ich falsch mache ?
lg
Julian Nischler


----------



## Flex (1. Oktober 2007)

Welche Zeichensatz benutzt deine Datei?

Das ganze sieht nach einem Konflikt der Zeichensätze aus.


----------



## ciubic (1. Oktober 2007)

Hi,
Danke für die schnelle antwort!
In der Regel UTF-8!
Wie kann ich den Zeichensatz feststellen.
lg
Jul


----------



## Gumbo (1. Oktober 2007)

Bei UTF-8 und selbst bei ISO 8859-1 brauchst du die Umlautzeichen gar nicht durch Zeichenreferenzen zu ersetzen. Die HTML-Metazeichen allein kannst du mit der htmlspecialchars()-Funktion ersetzen.


----------



## ciubic (1. Oktober 2007)

@Gumbo:
ja ist logisch, aber wiso werden die zeichen falsch ausgegeben?
lg
Jul


----------



## ciubic (1. Oktober 2007)

In letzter Zeit habe ich nicht viel in PHP gearbeitet,
jedoch kann ich mit erinnern das ich dieses Problem bei früheren Projekten nicht hatte.

Ich werde es jetzt einfach mit htmlspecialchars machen und 
diese Zeile verwenden:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
lg
Julian Nischler


----------



## Gumbo (1. Oktober 2007)

Die htmlentities()-Funktion erwartet einen ISO-8859-1-kodierte Zeichenkette. Über den dritten Parameter kann jedoch ein anderer Zeichensatz angegeben werden.


----------



## ciubic (1. Oktober 2007)

Hi,
Danke so gehts echo htmlentities("Ä-ö",ENT_QUOTES,"UTF-8");
lg
Julian Nischler


----------



## phpjan (20. Januar 2010)

Hallo, ich habe dasselbe problem wie ciubic.


```
echo htmlentities("lülä");
```

geht nicht. Ich bekomme wenn ich den quelltext im browser anschaue "&Atilde;&frac14;l&Atilde;&curren;" heraus.

So gehts aber: 
	
	
	



```
echo htmlentities("Ä-ö",ENT_QUOTES,"UTF-8");
```

Ich habe xampp lokal auf meinem Rechner

Gibt es eine möglichkeit das htmlentities funktioniert  ohne den zusatz parameter Ent_quotes ?


----------



## Sven Mintel (20. Januar 2010)

Jo klar, du kannst generell mit Latin1 als Zeichensatz arbeiten...dann wäre das 3.Argument nicht vonnöten.

Ist allerdings fraglich, was weniger Arbeit macht...ganzes Projekt umstellen oder aber die Parameter bei der Funktion notieren.

Alternativ könntest du dir auch einfach eine eigene Methode schreiben, welche das standardmässig mit UTF8 macht.


----------

