[PHP] wie am besten variables Content einbinden?

Sihtam

Well-known member
ID: 2675
L
9 Mai 2007
55
0
Huhu zusammen,
wie würdet ihr am ehesten den Wert von $go auslesen und ausgeben lassen?
Beispiel url: xyz.de/index.php?go=home

switch/case?
array?
Datenbank?

andere möglichkeit?
 
weis nicht so genau... is auch lang her das ich PHP gemacht hab...
weis auch nicht was du vor hast aber würde sagen Case....
 
kenn den richtigen syntax net aber geht irgendwie so...
case(go)
go="home"{
include...
}
break;
go="lala"{
include
}
break;
go=""{
}

wenn hier aber jemand ist der genau weis wie das geht soll sich melden...
ich weis nur wie es geht und dass aber kenn den genauen code nicht...^^

edit:
google einfach mal nach case php
 
Wenn es mmer ne Datei ist die den gleichen namen trägt, dann brauchst doch kein Switch case, einfach testen ob es die datei auch gibt, wenn ja, die ausgeben sonst die default datei.

Dann mußt nciht für jede neue Datei neue fall einbauen.

Und natürlich testen obs die datei auf deinem server gibt...
 
also mit switch/case müsste es so funktionieren:
PHP:
switch($_GET['go']) {
case "home":
  include ('home.php');
  break;
case "xxx":
  include ('xxx.php');
  break;
}

ich habe es bei mir folgendermaßen:
PHP:
$bereich['home'] = "home.php";
$bereich['xxx'] = "xxx.php";

if (isset($_GET['section']) AND isset($bereich[$_GET['section']])) {
     include $bereich[$_GET['section']];
   }

   else {
     include $bereich['start'];
}
das hat den Vorteil, dass ich nur eine Variable ergänzen muss, wenn ich eine weitere Seite hinzufügen möchte.
MfG
rapper93k
 
...das hat den Vorteil, dass ich nur eine Variable ergänzen muss...
Und es hat den enormen Vorteil, dass man direkt bösen Code includieren kann. Wie geil. Schade doch nicht.
Hatte es ein bisschen falsch gesehen ;)

EDIT: Aber zu Array oder DB würde ich auch raten.
 
Zuletzt bearbeitet:
Von switch/case würde ich abraten. Das wird schnell unübersichtlich. Insofern ist die Array-Variante die definitiv schönere und irgendwie auch flexiblere Variante.

Wie das Array letztendlich gefüllt wird, bleibt Dir überlassen. Entweder kommen die Einträge direkt per Definition, aus einer externen Datei oder auch aus der Datenbank. Das ist im Endeffekt egal und hängt mehr von der eigenen Neigung ab als von irgendwelchen programmiertechnischen Vor- oder Nachteilen.

Ich persönlich habe ewig lange auf die externe Datei-Variante geschworen, bis ich letztendlich zu einem ganz anderen Ansatz gekommen bin (Kapselung der Logik in eigenen Klassen in einem eigenen Verzeichnis, die dann ihrerseits Templates einbinden können, wie immer sie wollen).