Geltungsbereich von PHP Objekten
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
beginn
code
datei
datum
definieren
empfehlen
entsprechende datei
fehler
file
flag
funktion
index
konfiguration
objekt
parameter
post
problem
safe
speichern
zugreifen
-
Hallo meine lieben Lima Freunde
Ich verwende auf meiner Website mehrere Objekte um Konfigurationen und allgemein wichtige Variablen / Funktionen zu speichern.
Natürlich möchte ich auf diese Objekte in jeder Datei der Website zugreifen.
Hier liegt nun das Problem: Ich definiere die Objekte in Datei A, include diese in die index Datei, wo sie verwendet werden, und benötige sie dann auch in Datei B, welche ebenfalls in die index Datei includiert wird. Wenn ich nun in Datei B auf eines der Objekte zugreife, behauptet php, dass dieses nicht existiert. Wenn ich die Datei in der das Objekt erzeugt wird direkt in Datei B einbinde bekomme ich den Fehler dass ich das Objekt nur einmal definieren kann.
Für alle Lösungsvorschläge schon mal Danke im Vorraus
makawa -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Sorry ich merke gerade dass ich einen Fehler im Post gemacht habe.
Die erste Zeile Der index Datei sieht so aus:
In der core.php steht dann:include("xxx/safe/core.php");
in config.php werden die Objekte mitrequire_once('xxx/safe/config.php');
definiert und dann mitclass config { ...
erzeugt.$config = new config;
weiter unten in der index.php wird dann eine Funktion aufgerufen (aus dem Objekt aus config.php und mit Parametern aus core.php), die die entsprechende Datei einbindet, in der ich nochmal das Objekt benötige. -
also, da du anscheinend an etwas strukturiertem arbeitest, würde ich dir empfehlen auch selbst strukturiert vorzugehen.
1. du lädst einen core, der core braucht eine Config-File
2 möglichkeiten:
-der übersichtlichkeit halber lädst du die Config gleich zu beginn
-du lädst den Core zu beginn und da drin wie bisher die Config daten. alles nachfolgende wird diese Daten zur verfügung haben.
alelrdings solltest du bei alen die ausführung unterbinden, wenn sie nciht direkt aus der index.php aufgerufen werden. das machst du ganz einfach, indem du ein flag setzt.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage