• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

php: html-Sonderzeichen in str_pad

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Moin!

Ich benutze folgenden php-Code:
Code:
$test = str_pad('teststring', 20, '•', STR_PAD_LEFT);
Nun wird das html-Sonderzeichen • nicht als einziges Zeichen sondern als String verwendet.
Wie kann ich dieses Problem umgehen?

Gruß zoom
 
PHP ist zwar eher wie sibirisch rückwärts für mich, aber das sollte mit einer Maskierung gehen:
Statt &entity; also &&entity;
(Nur so auf Verdacht)
 
PHP ist zwar eher wie sibirisch rückwärts für mich, aber das sollte mit einer Maskierung gehen:
Statt &entity; also &&entity;
(Nur so auf Verdacht)
Nein, das funktioniert leider nicht. &• wird ebenfalls als string behandelt.
 
Nein, das funktioniert leider nicht. &• wird ebenfalls als string behandelt.
Ach so, du meinst das andersrum. :-)
Benutz das UTF-8 Äquivalent: 0xe2 0x80 0xa2
Hexcode-Eingabe in PHP????
Versuchs mal mit dieser Schreibe:
\xe2\x80\xa2
(Reichts nicht auch wenn du die Anführungszeichen weglässt? Wirds dann nicht aufgelöst?)
 
Ach so, du meinst das andersrum. :-)
Benutz das UTF-8 Äquivalent: 0xe2 0x80 0xa2
Hexcode-Eingabe in PHP????
Versuchs mal mit dieser Schreibe:
\xe2\x80\xa2
(Reichts nicht auch wenn du die Anführungszeichen weglässt? Wirds dann nicht aufgelöst?)
Die Funktion str_pad füllt einen string mit einem Zeichen auf. Ein Wegfall der Anführungszeichen führt zu einem Fehler. Mit dem HEX-Code funktioniert das auch nicht. Google hilft mir leider auch nicht weiter...
 
Beim Browser soll ja wahrscheinlich immer noch • ankommen...

In der Doku gibt es einige Vorschläge dazu. Der einfachste besteht darin, zunächst mit einem einzigartigen Zeichen zu padden (z.B. § oder *) und danach str_replace anzuwenden. Das geht freilich nur, wenn Du Dir halbwegs sicher sein kannst, dass der zu paddende Text keine komischen Zeichen enthält.
 
  • Like
Reaktionen: zoom
Beim Browser soll ja wahrscheinlich immer noch • ankommen...

In der Doku gibt es einige Vorschläge dazu. Der einfachste besteht darin, zunächst mit einem einzigartigen Zeichen zu padden (z.B. § oder *) und danach str_replace anzuwenden. Das geht freilich nur, wenn Du Dir halbwegs sicher sein kannst, dass der zu paddende Text keine komischen Zeichen enthält.
Das ist die Lösung. Vielen Dank.