Portal > Foren > PHP > PHP-Programmierung > Wie beginnne ich eine Seite mit Oop richtig?
Antwort
 
Themen-Optionen
Alt 30.10.2005, 10:14 Nach oben    #1
Erfahrener Benutzer
 
Registriert seit: 30.10.2005
Beiträge: 279
Standard Wie beginnne ich eine Seite mit Oop richtig?

Hallo. Ich hab jetzt auch von php de gewechselt nur mal so erwähnt... Also es geht darum das ich meine Seite bald wieder überarbeiten möchte und diesmal möglichst viel in Oop.
Da ich bei meinem letzten Rundumschlag zur Oop gefunden hab und nur ein bisschen Oop verwendete. Ich hatte mir eine Image Klasse gebastelt die thumbs macht, logo rein, rahmen zieht, etc...da hat mich der ganze Modulkram richtig begeistert.

Schätze mal ich kann bei meinem hoster auf php5 umsteigen.

Derzeit benutze ich Smarty mit einem Blätter und FormValidation Plugin. (Kennt jemand dazu vielleicht ne passendere Alternative?)

Dazu kommt peardb und pear_textwiki.

Mir ist eben nochnicht so bewusst wie ich uml mäßig so alles vererbe weitergebe, das dinge eben nur dort verfügbar sind wo sie benötigt werden. kann mir jemand ein paar tips geben wie ich auch die oben erwähnten klassen miteinbinde und auch vielleicht wie ich meinen code richtige beschreibe?
Hatte irgendwas mit @access, @private gelesen in den pear klassen. Wie tu ich das bei meinen klassen handhaben?
ex³ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.10.2005, 15:41 Nach oben    #2
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Hi,
Zitat:
Zitat von ex³
Mir ist eben nochnicht so bewusst wie ich uml mäßig so alles vererbe weitergebe, das dinge eben nur dort verfügbar sind wo sie benötigt werden.
ich muss gestehen, dass ich jetzt nicht wirklich weiß, wie ich darauf antworten soll.


Zitat:
Zitat von ex³
kann mir jemand ein paar tips geben wie ich auch die oben erwähnten klassen miteinbinde und auch vielleicht wie ich meinen code richtige beschreibe?
Klassen einbinden .. nu, mit require_once und/oder Konsorten einbinden und dann eine Instanz der Klasse erstellen. Ich weiß, doofe Antwort, aber mehr ist das ja dann auch nicht.

Strukturell gibt es ja viele Ansätze. So könntest du nur eine Datei "index.php" erstellen, die dann bestimmt, welcher Inhalt dargestellt werden soll. Ich habe für jede Rubrik eine eigenen PHP-Datei, welche dann z.B. so aussieht.

PHP-Code:
<?php

    
require_once('./autoload.inc.php');

    
$content = new StaticContent('testrubrik');

    
// einige Daten setzen

    
$tpl->assign('content'$content->getData());

    
$tpl->display($content->getTemplateFile());

?>
Is jetzt natürlich gekürzt .. aber soll ja auch nur ein Beispiel sein.

Dokumentation ... such mal nach phpDoc(umentor) ..

Grüße Ben.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2005, 19:36 Nach oben    #3
Erfahrener Benutzer
 
Registriert seit: 30.10.2005
Beiträge: 279
Standard

So tu ich das tatsächlich derzeit auch handhaben. Oben objekte erzeugen je nach Seite dann diverse info arrays erstellen und verändern und dann einer template zuweisen und ausgeben.

was bedeutet denn dieses "./" bei deinem require_once?
ex³ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 02:03 Nach oben    #4
Johannes Schlichenmaier
 
Benutzerbild von Jojo
 
Registriert seit: 26.08.2005
Ort: Mannheim
Beiträge: 397
Standard

der . steht in der Pfadangabe bei Unix-Systemen für das aktuelle Verzeichnis.
__________________
In the beginning was the word
and the word was content-type: plain/text

heute code ich, morgen debug ich und uebermorgen cast ich die koenigin auf int
Jojo ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 14:21 Nach oben    #5
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Nicht nur bei UNIX :>
. ist das aktuelle Verzeichnis, .. das übergeordnete.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 16:12 Nach oben    #6
Goldman.de
 
Benutzerbild von J33d3X
 
Registriert seit: 09.10.2005
Ort: Frankfurt am Main
Beiträge: 190
Standard

mein tipp
a) index datei, welche requests verteilt
b) global.php ( in welcher die referenzen erstellt werden )

die index bindet die global ein
dadurch das es referenzen sind ... ab php5 eh keine kopien mehr ist es egal wo sie überall zur verfügung stehen .. da man ja eh mit
function ....() {
global $objRefAuf...;
}
einbindet ....

mfg
J33d3X ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 16:28 Nach oben    #7
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Das @access, das du erwähnt hast, ist ein Parameter für PHPdoc und legt die gewollte Reichweite der Methode/Eigenschaft fest.
public = für alle
private = nur für die Klasse
protected = nur für die Klasse sowei Mutter- und Kindklassen.

Ein Tipp noch, schreibe die Klassen nach Themen. Es hat imo keinen Sinn, Funktionen, die nichts miteinander zutun haben, in eine Klasse zusammenzufassen.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 17:20 Nach oben    #8
Erfahrener Benutzer
 
Registriert seit: 30.10.2005
Beiträge: 279
Standard

Zitat:
Zitat von J33d3X
mein tipp
a) index datei, welche requests verteilt
b) global.php ( in welcher die referenzen erstellt werden )
Hm...wie meinst du das? Per $_GET Parameter verschiedene Seiten in die index datei includen?

Also du meinst ich sollte bestimmte Objekte wie DB in einer globalen Datei überall einbinden. Jo klingt richtig so hatte ich das auch schonmal gemacht (wiki instanz gemacht, dann die rules gesetzt und dann in jede page included)

Wie ist das mit den Referenzen? Läuft jetzt ähnlich wie bei Java mit den Pointern oder so ähnlich? Ist das SESSION übergreifend? Ist ein Objekt was in der index.php erstellt wurde auch in der news.php verfügbar? Da seh ich glaube ich was falshc.
ex³ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2005, 17:26 Nach oben    #9
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Zitat:
Wie ist das mit den Referenzen? Läuft jetzt ähnlich wie bei Java mit den Pointern oder so ähnlich?
Eine Referenz erzeugst du so:
PHP-Code:
$foo =& $bar
$foo und $bar zeigen jetzt beide auf den selben Speicherbereich, d. h. $foo ist eine Referenz auf $bar und umgekehrt.

Zitat:
Hm...wie meinst du das? Per $_GET Parameter verschiedene Seiten in die index datei includen?
Ja, nur ein wenig ausgefeilter.

Zitat:
Ist das SESSION übergreifend? Ist ein Objekt was in der index.php erstellt wurde auch in der news.php verfügbar? Da seh ich glaube ich was falshc.
Referenzen haben nichts mit Sessions zutun. Sessions indentifizieren den User seitenübergreifend und können ggf. seitenübergreifend Daten zwischenspeichern.
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

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 aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Tomcat 5.5] Eigener Filter schuld am doppelten Laden der Seite? WarrenFaith Tools, Server, Betriebssysteme 2 18.04.2007 21:29
Caching mittels HTTP-Code 404 Byrel Tools, Server, Betriebssysteme 37 27.12.2006 09:12
[PHP] 404-Fehlerseiten als Chance PaterNoster Tutorials 0 23.04.2006 15:04
Seite mit Framesets -> Aufruf einer Datei...? cancer HTML, XML und CSS 5 24.12.2005 13:46
Wie erkennen, wann Seite komplett geladen? Basti77 Allgemeine Java-Programmierung 5 04.08.2005 12:23


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:44 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44