Leerzeichen bei echo-Befehl werden ignoriert

Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 21:50:30 von Markus Stein

Wenn ich echo "A B";
ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.

a) Woran liegt das?

Ich habe mir mit:
echo "A     B";
ausgeholfen.

b) Kann man das auch innerhalb des echo-Befehls abkürzen,
so daß man nicht für jedes Leerzeichen " " schreiben muß?

c) Gibt es eine bessere Lösung als " " zu verwenden?

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 21:58:00 von helmut

Hallo, Markus,

Du (markusstein1234) meintest am 20.01.08:

> Wenn ich echo "A B";
> ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.

> a) Woran liegt das?

An HTML. Nicht an PHP.

> c) Gibt es eine bessere Lösung als " " zu verwenden?

Tabelle mit definierte Spaltenbreite. (ist nicht unbedingt "besser").

Viele Gruesse!
Helmut

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 22:01:45 von Wolfgang Fellger

Markus Stein schrieb:

>Wenn ich echo "A B";
>ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.

Falsch.

>a) Woran liegt das?

Du hast den Zusammenhang von PHP, HTML und dem was der Browser anzeigt nicht
verstanden.

>Ich habe mir mit:
>echo "A     B";
>ausgeholfen.

Schön.

>b) Kann man das auch innerhalb des echo-Befehls abkürzen,
>so daß man nicht für jedes Leerzeichen " " schreiben muß?

Nichts spricht dagegen, eine Funktion zu schreiben, die die entsprechende
Ersetzung vornimmt. Stichwort str_replace.

>c) Gibt es eine bessere Lösung als " " zu verwenden?

Sagen wir es so: Warum meinst du, in HTML-Dokumenten mehr als ein Leerzeichen
hintereinander ausgeben zu müssen?

--
Wolfgang Fellger

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 22:02:38 von Joerg Behrens

Markus Stein schrieb:
> Wenn ich echo "A B";
> ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.

Schalte mal die Sourceanzeige im Browser an und zaehle die Leerzeichen.

> a) Woran liegt das?

Du hast vergessen wie HTML interpretiert wird.

> Ich habe mir mit:
> echo "A     B";
> ausgeholfen.
>=20
> b) Kann man das auch innerhalb des echo-Befehls abkürzen,
> so daß man nicht für jedes Leerzeichen " " schreiben muß?

Wenn es innerhalb eines "

A     B
" steht.

> c) Gibt es eine bessere Lösung als " " zu verwenden?

CSS mit einem oder auch
.

Gruss
Joerg

--=20
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 22:08:32 von Michael Fesser

..oO(Markus Stein)

>Wenn ich echo "A B";
>ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.
>
>a) Woran liegt das?

Die sind schon alle da (schau in den Quelltext), nur werden mehrfache
Leerzeichen oder auch Zeilenumbrüche in HTML zu einem zusammengefaßt.

>Ich habe mir mit:
>echo "A     B";
>ausgeholfen.

Unschön.

>b) Kann man das auch innerhalb des echo-Befehls abkürzen,
>so daß man nicht für jedes Leerzeichen " " schreiben muß?

Kann man, allerdings ist vermutlich Dein Design kaputt. Insofern bringt
es wenig bis gar nichts, nur an den Symptomen herumzudoktern.

>c) Gibt es eine bessere Lösung als " " zu verwenden?

Üblicherweise CSS, aber es kommt natürlich auch drauf an, was Du
eigentlich machen willst.

Da das nix mit PHP zu tun hat, XPost & F'up2 .

Micha

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 22:13:15 von Claus Reibenstein

Markus Stein schrieb:

> Wenn ich echo "A B";
> ausgebe, wird nur ein Leerzeichen statt fünf ausgegeben.

Falsch. Es werden alle 5 ausgegeben.

> Ich habe mir mit:
> echo "A     B";
> ausgeholfen.

Damit gibst Du aber keine Leerzeichen aus, sondern 5x die Zeichenfolge
" ".

Dein Problem ist nicht PHP, sondern HTML. Dir scheinen grundlegende
Kenntnisse dieser Sprache zu fehlen. Sonst wüsstest Du, dass das von Dir
vermutete Fehlverhalten absolut korrekt ist.

Gruß. Claus

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 20.01.2008 23:56:01 von Niels Braczek

Helmut Hullen schrieb:
> Du (markusstein1234) meintest am 20.01.08:
>=20

>> c) Gibt es eine bessere Lösung als " " zu verwenden?
>=20
> Tabelle mit definierte Spaltenbreite. (ist nicht unbedingt "besser").

Doch natürlich. Tabellen sind zur Darstellung von Tabellen sogar optima=
l.

MfG
Niels

--=20
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 21.01.2008 09:07:00 von helmut

Hallo, Niels,

Du (nbraczek) meintest am 20.01.08:

>>> c) Gibt es eine bessere Lösung als " " zu verwenden?

>> Tabelle mit definierte Spaltenbreite. (ist nicht unbedingt
>> "besser").

> Doch natürlich. Tabellen sind zur Darstellung von Tabellen sogar
> optimal.

Wenn es eine Tabelle werden soll; in der ersten Frage war der Sinn
dieser Übung noch nicht so recht erkennbar.

Viele Gruesse!
Helmut

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 21.01.2008 10:56:31 von Niels Braczek

Helmut Hullen schrieb:

> Wenn es eine Tabelle werden soll; in der ersten Frage war der Sinn =20
> dieser Übung noch nicht so recht erkennbar.

Der einzige mir bekannte Grund, warum Leute mehr als ein Leerzeichen in
Folge eingeben zu müssen meinen, ist die tabellarische Darstellung.

MfG
Niels

--=20
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 21.01.2008 11:01:38 von Jens Himmelrath

Niels Braczek schrieb:
> Helmut Hullen schrieb:
>
>> Wenn es eine Tabelle werden soll; in der ersten Frage war der Sinn
>> dieser Übung noch nicht so recht erkennbar.
>
> Der einzige mir bekannte Grund, warum Leute mehr als ein Leerzeichen in
> Folge eingeben zu müssen meinen, ist die tabellarische Darstellung.

man ASCII-Art ;-)

regards,
Jens

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 21.01.2008 12:31:34 von steffen bruentjen

Niels Braczek wrote:
>Helmut Hullen schrieb:
>Der einzige mir bekannte Grund, warum Leute mehr als ein Leerzeichen in
>Folge eingeben zu müssen meinen, ist die tabellarische Darstellung.

Man könnte auch einen Zeilenumbruch erzwingen wollen. Aber das kann
wegen seiner sog. Lösung, non-breaking spaces zu benutzen wohl
ausgeschlossen werden. Schade eigentlich.

Schöne Grüße, steffen

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 21.01.2008 23:08:42 von steffen bruentjen

plain and simple me wrote:
>Markus Stein wrote:
>> b) Kann man das auch innerhalb des echo-Befehls abkürzen, so daß man
>> nicht für jedes Leerzeichen " " schreiben muß?
>
>Du könntest eine Variable Definieren: $a=' ', aber das will man
>nicht.
>

ah, um dann statt

echo "A     B";

das

echo "A{$a}{$a}{$a}{$a}{$a}B";

schreiben zu können? Ein guter Tipp.

>> c) Gibt es eine bessere Lösung als " " zu verwenden?
>
> verwenden, denn dafür ist es da. Na ja, mehr oder weniger.
>Eigentlich ist es dazu da Inline-Elemente zu gruppieren, aber du kannst
>dem Tag per CSS natürlich alle möglichen Design-Informationen geben, so
>natürlich auch eine Breite (blubb, oder
>per ID oder Klasse, wenn du es wirklich zu 100% trennen willst.).

Nein, span als nicht ersetzendes inline-Element darf keine Breite
zugewiesen bekommen. Zumindest nicht in dieser Form.

schöne Grüße, Steffen

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 22.01.2008 17:49:53 von Claus Reibenstein

steffen bruentjen schrieb:

> plain and simple me wrote:
^^^^^^^^^^^^^^^^^^^

Wer?

>> Du könntest eine Variable Definieren: $a=' ', aber das will man
>> nicht.
>
> ah, um dann statt
>
> echo "A     B";
>
> das
>
> echo "A{$a}{$a}{$a}{$a}{$a}B";
>
> schreiben zu können?

Nein, sondern um

echo "A$a$a$a$a$aB";

schreiben zu können.

Warum Frau "me" mit den vielen Vornamen wohl "das will man nicht"
geschrieben hat ...

>>> c) Gibt es eine bessere Lösung als " " zu verwenden?
>>
>> verwenden

*LOL*

> Nein, span als nicht ersetzendes inline-Element darf keine Breite
> zugewiesen bekommen. Zumindest nicht in dieser Form.

Womit sich Frau "me" wohl endgültig disqualifiziert haben dürfte :-)

Aber das gehört hier alles nicht hin. Das ist HTML, nicht PHP.

Gruß. Claus

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 22.01.2008 17:51:17 von Claus Reibenstein

Christoph Herrmann schrieb:

> Der Vollständigkeit halber sei gesagt, dass HTML keine Leerzeichen
> ignoriert (denn Sie stehen ja im HTML Source drin)

Du weißt, was ein Quellcode ist?

Gruß. Claus

Re: Leerzeichen bei echo-Befehl werden ignoriert

am 22.01.2008 18:23:46 von Christoph Herrmann

Claus Reibenstein schrieb:
> Christoph Herrmann schrieb:
>
>> Der Vollständigkeit halber sei gesagt, dass HTML keine Leerzeichen
>> ignoriert (denn Sie stehen ja im HTML Source drin)
>
> Du weißt, was ein Quellcode ist?

Jep, dann streich das Source bei mir und mach ein Text oder Dokument
daraus. :)

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/