HMTL-Quellcode soll nicht in einer Zeile stehen
Marco
- php
0 Gunnar Bittersmann
Hallo!
Ich habe mein PHP-Projekt so weit beendet, und möchte nun ein paar "Schönheitskorrekturen" vornehmen.
Bei der Erzeugung des HTML-Codes durch PHP werden, wenn man sich die Quellcode-Seite anschaut, (fast) alle Tabellen ein einer Zeile geschrieben.
Auf der eigentlichen Seite sieht das ja Top aus, aber wenn man sich den HTML-Quellcode anschaut, blickt da keiner durch.
Folgendes:
Schreibe ich im PHP-Code:
echo '<td>1. BlaBlaBla</td>
<td>2. BlaBla</td>';
Wird das im HTML-Quellcode auch in zwei Zeilen dargestellt. So wie ich es gerne hätte.
Habe ich aber nun z.B:
echo '<td>Hallo Welt</td>';
if (irgendwas)
echo '<td>noch mehr bla</td>';
In diesem Fall wird alles im HTML-Quellcode in einer Zeile ausgegeben, und da ich recht umfangraiche Tabellen darstelle, ist das Ganze dann sehr unübersichtlich.
Was für eine Lösung (wenn überhaupt) gibt es da?
Danke schonmal!
Hello out there!
[…] ist das Ganze dann sehr unübersichtlich.
Was für eine Lösung (wenn überhaupt) gibt es da?
'\n' für Zeilenumbruch,
'\t' für Tabulator (Einrückung).
See ya up the road,
Gunnar
Hallo,
'\n' für Zeilenumbruch,
'\t' für Tabulator (Einrückung).
muss es nicht "\n" bzw "\t" lauten?
wenn ich mich recht erinnere wird bei '\n' die Zeichenkette \n ausgegeben
mfg
Twilo
Hallo Twilo,
muss es nicht "\n" bzw "\t" lauten?
wenn ich mich recht erinnere wird bei '\n' die Zeichenkette \n ausgegeben
Nein, das ist bei Variablen so. Unter Windoof-Systemen heißt wird ein Zeilenumbruch übrigens mit '\r\n' escaped (Wagenrücklauf + Newline).
Beste Grüße
Richard
Hallo,
muss es nicht "\n" bzw "\t" lauten?
wenn ich mich recht erinnere wird bei '\n' die Zeichenkette \n ausgegeben
Nein, das ist bei Variablen so. Unter Windoof-Systemen heißt wird ein Zeilenumbruch übrigens mit '\r\n' escaped (Wagenrücklauf + Newline).
<?php
print '\n';
print '\n\n\n';
?>
ergibt bei mir folgende Ausgabe
\n\n\n\n
unter Debian 3.1 mit den Apachen 1.3.37 und php 5.1.4 mit cgiwrap
mfg
Twilo
Hallo
<?php
print '\n';
print '\n\n\n';
?>
> ergibt bei mir folgende Ausgabe
> \n\n\n\n
>
> unter Debian 3.1 mit den Apachen 1.3.37 und php 5.1.4 mit cgiwrap
Nicht nur dort. Wenn mit Hochkommata gearbeitet wird, muss der Backslash maskiert werden '\\n', wenn man die Anführungszeichen ([shift]+[2]) zur Begrenzung von Zeichenketten benutzt, stimmt Gunnars Angabe "\n".
Tschö, Auge
--
Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
(Victor Hugo)
[Veranstaltungsdatenbank Vdb 0.1](http://termindbase.auge8472.de/)
muss es nicht "\n" bzw "\t" lauten?
wenn ich mich recht erinnere wird bei '\n' die Zeichenkette \n ausgegeben
Genau so ist es. Ich benutze wg. "strict-html" halt immmer diese ''
Deswegen passt diese Lösung bei mir halt nicht :(
Hello out there!
Genau so ist es. Ich benutze wg. "strict-html" halt immmer diese ''
?? Was haben einfache/doppelte Anführungszeichen mit "strict-html" zu tun?
See ya up the road,
Gunnar
?? Was haben einfache/doppelte Anführungszeichen mit "strict-html" zu tun?
Es ist ein Unterschied ob dort
echo '<form name="irgendwas" method="post">'; <--strict
oder
echo "<form name=irgendwas method=post>"; <--loose
oder auch
echo "<form name='irgendwas' method='post'>"; <-- k.a. ;-)
steht.
So hat man es mir beigebracht ;-)
Hallo Marco.
?? Was haben einfache/doppelte Anführungszeichen mit "strict-html" zu tun?
Es ist ein Unterschied ob dort
echo '<form name="irgendwas" method="post">'; <--strict
oder
echo "<form name=irgendwas method=post>"; <--loose
oder auch
echo "<form name='irgendwas' method='post'>"; <-- k.a. ;-)
steht.So hat man es mir beigebracht ;-)
Man hat dir nur Halbwahrheiten beigebracht. Ob nun „'“ oder „"“ ist für die Notation von Attributwerten egal.
Und nebenbei gibt es auch noch eine Alternative: Heredoc.
Einen schönen Samstag noch.
Gruß, Ashura
Hello out there!
echo '<form name="irgendwas" method="post">'; <--strict
echo "<form name=irgendwas method=post>"; <--loose
Nein, da verwechselst du was.
<form name=irgendwas method=post>
ist sowohl valides HTML 4.01 Transitional als auch valides HTML 4.01 Strict. Unter bestimten Umständen darf man die Anführungszeichen um Attributwerte weglassen; sollte dies aber nicht tun. [HTML401 §3.2.2]
Es ist aber weder valides XHTML 1.0 Transitional noch valides XHTML 1.0 Strict, denn in XML darf man das nicht.
echo "<form name='irgendwas' method='post'>"; <-- k.a. ;-)
Natürlich geht das. Aber auch das:
echo "[code lang=html]<form name=\"irgendwas\" method=\"post\">
";[/code]
See ya up the road,
Gunnar
Hi,
Genau so ist es. Ich benutze wg. "strict-html" halt immmer diese ''
Deswegen passt diese Lösung bei mir halt nicht :(
ich schließe mich der Frage von Gunnar an...
Abgesehen davon hast Du noch die Möglichkeit, entweder ."\n" an die Ausgabe zu hängen oder - wie ich es bevorzuge, für den Zeilenumbruch eine Variable zu definieren: $cr=chr(13).chr(10);
freundliche Grüße
Ingo