php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.01.2011, 15:55  
Benutzer
 
Registriert seit: 23.05.2010
Beiträge: 59
PHP-Kenntnisse:
Anfänger
JBJHJM befindet sich auf einem aufstrebenden Ast
Standard erstellung und verwaltung einer unbekannten Anzahl von Klassen

Hallo,
Ich weiß gerade nicht weiter.
Abgesehen von den Standardklassen für den Kern, Datenbank etc. hat meine Homepage eine Klasse für das jeweils geladene Modul (==> z.B. ein Modul für einfache HTML-Seiten, ein Modul für Galerien, ein Modul für News etc.) und eine unterschiedliche Anzahl von Content-Klassen (z.B. Kurznachrichten am Rand, Kommentarfunktionen usw.), die je nach Bedarf durch einen Eintrag in den Modul-Optionen eingetragen werden.

Je nach Modul kann es nun sein, dass gar keine Content-Klasse gebraucht wird, oder vielleicht auch fünf... und jede dieser Content-Klassen enthält dann wieder Informationen über Templates, Werte usw. auf die die Document-Klasse, welche alle Infos sammelt die für den Output benötigt werden und die Templates parst, zugreifen muss.

Aber ich habe keine Ahnung, wie ich diese variable Anzahl von Content-Klassen erstellen und mit ihnen arbeiten soll
Habt ihr da irgendwelche Tipps wonach ich da suchen muss um weiterzukommen?
JBJHJM ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.01.2011, 17:13  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.267
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Woran hängt es, am Laden, am Initialisieren, am Bereitstellen?
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 29.01.2011, 17:39  
Neuer Benutzer
 
Registriert seit: 21.01.2011
Beiträge: 22
PHP-Kenntnisse:
Fortgeschritten
sebush befindet sich auf einem aufstrebenden Ast
Standard

__autoload() sollteste dir mal anschaun
__________________
www.Jena-Media.de Websolutions & Services
sebush ist offline   Mit Zitat antworten
Alt 30.01.2011, 00:01  
Benutzer
 
Registriert seit: 23.05.2010
Beiträge: 59
PHP-Kenntnisse:
Anfänger
JBJHJM befindet sich auf einem aufstrebenden Ast
Standard

Es hängt eher am organisieren...
ok ich schau mir mal an was ich mit autoload anstellen kann!

also autoload hilft mir ein bisschen weiter... aber gelöst ist das Problem noch nicht...
Was haltet ihr davon, ein "Array of content-klassen" zu benutzen? Denn die Variablennamen denen die Klassen zugewiesen werden existieren ja nicht. Mit variablen Variablen arbeiten wollte ich eigentlich nicht, also käme ein assoziazives Array infrage...

Geändert von JBJHJM (30.01.2011 um 02:20 Uhr).
JBJHJM ist offline   Mit Zitat antworten
Alt 30.01.2011, 00:05  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard

Verwechselst du Klassen mit Objekten?
Wenn ja, übergib den Modulen eine Factory.
__________________
Programming today is a race between developers striving to build better idiot-proof programs, and the universe trying to produce better idiots. So far, the universe is winning.
bitsnack ist offline   Mit Zitat antworten
Alt 30.01.2011, 02:21  
Benutzer
 
Registriert seit: 23.05.2010
Beiträge: 59
PHP-Kenntnisse:
Anfänger
JBJHJM befindet sich auf einem aufstrebenden Ast
Standard

argh natürlich meine ich Klassen!!! ok ich schau mal ob ich mit einer Factory weiterkomme.
JBJHJM ist offline   Mit Zitat antworten
Alt 30.01.2011, 05:07  
Neuer Benutzer
 
Registriert seit: 21.01.2011
Beiträge: 22
PHP-Kenntnisse:
Fortgeschritten
sebush befindet sich auf einem aufstrebenden Ast
Standard

du willst also alle erfuegbaren klassennamen in ein array speichern? ich frage mich wozu?
__________________
www.Jena-Media.de Websolutions & Services
sebush ist offline   Mit Zitat antworten
Alt 30.01.2011, 05:34  
Erfahrener Benutzer
 
Benutzerbild von splasch
 
Registriert seit: 05.01.2009
Beiträge: 474
PHP-Kenntnisse:
Fortgeschritten
splasch kann nur auf Besserung hoffen
Standard

Für mich hört sich das so an. Könnte es sein das du keinen Zentrallen aufbau in deinen Script hast und du nur sachen includierst anstatt alles Zentrall über die Index.php laufen zu lassen.

Die klassen sollte sich alle in ein vordefinierten Verzeichnis befinden und den Namen der Klasse als php datei tragen. Dann gibst auch keine Probleme mit dem __autoload()
splasch ist offline   Mit Zitat antworten
Alt 30.01.2011, 12:50  
Benutzer
 
Registriert seit: 23.05.2010
Beiträge: 59
PHP-Kenntnisse:
Anfänger
JBJHJM befindet sich auf einem aufstrebenden Ast
Standard

doch klar habe ich einen zentralen ordner etc.
es geht hier NICHT um ALLE KLASSEN! Sondern sozusagen um 'Unterstützungsklassen' die nur nach Bedarf geladen werden.
Das Problem ist einfach, dass ich mit autoload zwar klassen laden könnte, die einfach nach ihrem Dateinamen benannt werden, aber dann könnte ich immer noch nicht sonderlich einfach auf die Klasse zugreifen, weil der Variablenname nicht bekannt ist. Damit bleiben eigentlich zwei Optionen:

PHP-Code:
class neueKlasse{
public function 
test() {echo'test';}

Klasse wird als $neueKlasse definiert. Allerdings weiß PHP ja nicht, dass die Klasse unter $neueKlasse zu finden ist, also müsste ich dazu etwas liefern wie

A.
PHP-Code:
$variabler_klassenname 'neueKlasse';
$
$neueKlasse->test(); 
B.
Ich erstelle die Klasse in einem Array:
PHP-Code:
$variableKlassen['neueKlasse'] = new neueKlasse
und reduziere damit den variablen Bezeichner auf $variableKlassen. Die Klassennamen brauche ich dann nur als strings zu speichern und kann dann halt mit $variableKlassen[$klassenname] drauf zugreifen.
Ein weiterer Vorteil wäre dass ich, da die Content-Klassen ja alle gleich aufgebaut sind, auch ein foreach($variableKlassen as $Klasse) Daten/Funktionen aus allen Content-Klassen lesen/schreiben/ausführen kann.

Edit:
So ich habe mich gerade noch mal in die __autoload Funktion eingelesen. Ansich wäre das ein Lösungsansatz, allerdings sollte mein System so flexibel sein, dass es problemlos mit anderen Systemen (z.B. Foren) zusammenarbeiten kann. Und wenn nun Forum und mein System beide Autoloads benutzen, dann wirds problematisch...

Geändert von JBJHJM (30.01.2011 um 13:04 Uhr).
JBJHJM ist offline   Mit Zitat antworten
Alt 30.01.2011, 13:17  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard

Zitat:
So ich habe mich gerade noch mal in die __autoload Funktion eingelesen. Ansich wäre das ein Lösungsansatz, allerdings sollte mein System so flexibel sein, dass es problemlos mit anderen Systemen (z.B. Foren) zusammenarbeiten kann. Und wenn nun Forum und mein System beide Autoloads benutzen, dann wirds problematisch...
spl_autoload_register()

Zitat:
Das Problem ist einfach, dass ich mit autoload zwar klassen laden könnte, die einfach nach ihrem Dateinamen benannt werden, aber dann könnte ich immer noch nicht sonderlich einfach auf die Klasse zugreifen, weil der Variablenname nicht bekannt ist.
Dann ist dein System quatsch. Ich verstehe bis jetzt noch nicht was du eigentlich willst. Wie ist denn alles bisher aufgebaut? Wofür brauchst du überhaupt diese Klassen?
__________________
Programming today is a race between developers striving to build better idiot-proof programs, and the universe trying to produce better idiots. So far, the universe is winning.
bitsnack ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrere Klassen verknüpfen BlackJack01090 Software-Design 9 26.05.2009 20:43

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
seiten anzahl verwalten php, anzahl der unbekannten ort, php unbekannte klasse laden, verwaltung von klassenobjekten php, php, unbekannte klasse laden

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum