Tippsammlung für effektives PHP Programmieren
Fabian
- php
0 Ludwig0 Henryk Plötz
Hallo Forumgemeinde,
ich bin ein PHP Neuling und habe schon einige Male meine Fragen hier gepostet. Mir wurde immer konkret weitergeholfen und darüber hinaus habe ich noch zahlreiche Tipps für eine effektive PHP Programmierung erhalten.
Z.B. Das echo "$xyz" den Parser ausbremmst... und man daher nur echo $xyz schreiben sollte. etc.
Da das Handbuch in dieser Richtung nicht soviel hergibt, frage ich mich, ob es andere Nachschlagewerke gibt, die so etwas vermitteln.
Gibt es z.B. einen Geschwindigkeitsverlust wenn man von php in HTML wechselt und wieder in PHP zurück, oder sollte man lieber in PHP bleiben und echo dafür benutzen.
Ist es egal ob man jede Select Abfrage dann ausführt wenn Sie im HTMl Code gebraucht wird, oder sollte man alle Abfragen kombinieren, so dass man nur einmal eine Verbindung zur Datenbank aufbauen muß.
Was passiert wenn ich in einer While Schleife mit n Datensätzen eine Verbindung aufbauen möchte, legt das die Datenbank lahm, oder ist das ohne weiteres möglich?
Fragen über Fragen...
Danke und Grüße aus Braunschweig
Fabian
Hi,
Gibt es z.B. einen Geschwindigkeitsverlust wenn man von php in HTML wechselt und wieder in PHP zurück, oder sollte man lieber in PHP bleiben und echo dafür benutzen.
wir reden jetzt von codeseiten mit mehreren hundert zeilen (sonst ist der geschwindigkeitsunterschied maginal)
echo auf strings getrennt oder auf vars getrennt ist schnell, weil der parser nicht die vars aus dem string suchen muss zb._
echo "du bist ".$isonline." da";
trennt für den parser strings von vars -> schneller
der parser beachtet nur was zwischen <?php und ?> alles andere ist ihm egal, was aber nicht heißt das du jedes codestückchen auskommentieren sollst (die richtige mischung machts)
Ist es egal ob man jede Select Abfrage dann ausführt wenn Sie im HTMl Code gebraucht wird, oder sollte man alle Abfragen kombinieren, so dass man nur einmal eine Verbindung zur Datenbank aufbauen muß.
geschmackssache
du baust eh nur einen connect auf, der connect existiert solange bis a.) mysql_close() oder die seite geladen bzw durch den user oder die / exit abgebrochen wurde
Was passiert wenn ich in einer While Schleife mit n Datensätzen eine Verbindung aufbauen möchte, legt das die Datenbank lahm, oder ist das ohne weiteres möglich?
siehe oben du hast nur einen connect, das andere sind querys, wenn die schleife nicht über, sagen wir 100 durchläufe geht, kein problem.
versuch soweit wie möglich code von layout zu trennen.
lg
Ludwig
Moin
Gibt es z.B. einen Geschwindigkeitsverlust wenn man von php in HTML wechselt und wieder in PHP zurück, oder sollte man lieber in PHP bleiben und echo dafür benutzen.
Hmm, aus dem Bauch heraus würde ich lieber so oft wie möglich nach HTML wechseln: a) macht es den Code übersichtlicher (nicht nur, weil dein Texteditor den HTML-Code ordentlich einfärben kann)
b) Muss der PHP-Interpreter nichts mehr ausführen, sondern bloß noch nach dem nächsten Fetzen PHP-Code suchen
Ist es egal ob man jede Select Abfrage dann ausführt wenn Sie im HTMl Code gebraucht wird, oder sollte man alle Abfragen kombinieren, so dass man nur einmal eine Verbindung zur Datenbank aufbauen muß.
Ich persönlich ziehe es vor jegliche notwendige Datenbankabfrage ganz am Anfang zu machen:
a) Es trennt Code und Design besser
b) Wenn was schief geht, kannst du eine deinem Design angepasste Fehlerseite produzieren, anstatt irgendwo mitten auf der Seite ein "blabla failed" zu haben.
c) Der Zeitunterschiede zwischen den Abfragen ist nicht so groß -> es ist unwahrscheinlicher dass sich in der Datenbank zwischenzeitlich gravierende Änderungen ergeben. Und wenn, dann habe ich im Skript immernoch die Möglichkeit angemessen zu reagieren, weil noch nicht die Hälfte der Daten rausgeschrieben wurde.
--
Henryk Plötz
Grüße aus Berlin