Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Klassenerstellung PHP“

ti8shbi

Allround

Hallo allerseits!

Hab vor kurzem ein CMS gschrieben und bin voll stolz, dass es läuft ;)

jetzt will ich aber eine Klasse "CMS" bastln.
Hab mir nämlich gedacht, kann ned schaden, weil i dann nur die Klassen-PHP einbinden muss, und schon alle Funktionen hab.

Die Frage is nur, wie sinnvoll is das?
Reicht es nicht, einfach eine functions.php zu machen?
und: welche Methoden würdest ihr hierfür schreiben? Wär cool, wenns mir hier ne Liste reinschreiben könntets, mit allen Funktionen, die ihr für ein CMS sinnvoll haltet!


Was ist der Vorteil von Klassen? Ich blick da nicht ganz durch :)

Freu mich auf viele Antworten :)
 

ti8shbi

Allround

AW: Klassenerstellung PHP

also

kurz gesagt:


class.php:

PHP:
class CMS
{
function....

function....

usw.
}

und index.php

PHP:
include "class.php";
$newcms = new CMS();
$login = $newcms->login();
if ($login == "okay")
{
  $newcms->showmenu($newcms->getmenu());
}
usw.
 

gp812

Newbster

AW: Klassenerstellung PHP

also ich finde es irgendwie zu kompliziert.
mehere klassen machen schon sinn, aber wenn du die alle zusammen führst, kommt alles durcheinander.
 

saila

Moderatorle

AW: Klassenerstellung PHP

Hi,

eine Klasse ist das zusammenführen von zusammenhängenden Funktionen oder von Funktionen, welche miteinander in Verbindung stehen - können.

Nun kann man darüber Diskutieren, ob es Sinn macht, eine Klasse mit sagen wir 5 Funktionen und entsprechenden Var anzlegen oder ob man einfach nur eine Datei erzeugt, welche die 5 Funktionen beinhaltet und an passender Stelle einbindet - wie auch letztlich die Klasse startet.

Klassen an sich ergeben Sinn, wenn es sich um ein größeres Projekt handelt, zumal man mit den Klassen einen sehr guten Überblick herstellen kann. Nicht umsonst hat man in der Regel eine Datenbank-Klasse, welche alle Funktionen (in der Regel) beinhaltet, was in Verbindung mit einer DB steht.

Wenn man User verwaltet, ist ebenfallls die Empfehlung eine User-Klasse zu ersetellen, da diese wie auch eine DB-Klasse einfach aktiviert werden muss.

Der große Unterschied zu einer Funktionsdatei ist letztlich auch, dass man nicht ständig irgendwleche Funktionen einbinden muss. Also das handling ist deutlich einfacher/besser/übersichtlicher.

Allerdings erfordert es auch beim Erstellen einer Klasse ein Form der Weitsichtigkeit, um eben so viel als möglich abzudecken. Natürlich kann man eine Klasse immer erweitern und sogar mit anderen Klassen verknüpfen (Stichwort: extends).

Es bleibt wie immer bei einem selbst, wie man ein Projekt realisiert und wie einfach oder komplex es letztlich strukturiert ist/sein wird.

In diesem Sinne frohes schaffen.
 

blackout

Schaf im Wolfspelz

AW: Klassenerstellung PHP

Die Verwendung von Objekten erhöht generell den Abstraktionsgrad. Wenn du ein Objekt "Datenbank" hast, kannst du im Code einfach schreiben "hol mir Folgendes ausm Query", wie das dann geschieht ist Sache der Klasse, die das Objekt instantiiert. Insbesondere kann man auch mehrere Klassen schreiben, die die gleichen öffentlichen Schnittstellen haben, aber verschiedene Dinge tun. Das kann z.B. nützlich sein, um verschiedene Datenbank-Arten anzusprechen.
PHP:
<?
switch($DbType) {
	case 'MySql': $Db = new SqlDatabase(); break;
	case 'TextFile': $Db = new TextDatabase(); break;
}
$Db->openConnection(); // ist Db eine SQL-Datenbank, wird innerhalb der Klasse jetzt mysql_connect ausgeführt; ist es eine Textdatei dann fopen().
$Db->write($foo); // SQL: mysql_query('INSERT INTO ...'); TXT: fwrite(...)
$Db->closeConnection(); // SQL: mysql_close_connection(); TXT: fclose()
?>
Sollte ich Funktionen in den Kommentaren falsch betitelt haben kommt das daher, dass ich seit nem guten Jahr keine derer mehr angefasst habe sondern meine betreffende Klasse das Schuften übernommen hat. Meine Methode heißt SqlDatabase.close(), und die hab ich seit ewigkeiten nicht mehr angerührt. :)
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.189
Beiträge
2.582.077
Mitglieder
67.259
Neuestes Mitglied
SaschMasch1312
Oben