Moin Moin,
bin mir mal wieder die Haara am ausreißen, zumnindest wenn ich noch welche hätte.
Bin erneut an das Thema Klassen und functionen geraten und habe nur eines kapiert:
class functioniert nicht
{
var $dubistzublöd dafür
nun, was funktioniert nicht?
ich denke in erster Linie der Zusammenhang in meinem Kopf da sich für mich nach wie vor nicht der wirkliche Nutzen ableiten lässt.
Als bsp:
Ich bestimme die entfernung 2er Punkte anhand der jeweiligen x/y koordinaten (plz entfernung).
Vorgehen bisher, ich nehme beide user, suche deren PLZ und die dazugehörigen x/y koo und berechne die entfernung. Das ganze in einer eigenen PHP Datei die ich nach bedarf includiere.
So, jetzt will ich das mal mit Klassen und functionen realisieren.
Also nach 10 Aspirin und 3 std kopf zerbrechen setze ich mich mit KIppe und Kaffee voller Tatendrang an meinen Rechner, tippe ein Class entfernung ....
mhmm nicht gut also neu: function neueStrecke ().
Zunächsteinmal wollte ich nur den zusammenhang von Klasse, Objekt und function kennen lernen daher etwas ganz einfaches:
ok, zugegeben die Namen sind wirklich nicht clever gewählt jedoch berechnet er mir das richtige, nur Sinnvoll?
Frage 1: Was in eine Klasse packen?
Da stehe ich dann direkt an dem Hauptproblem, was sollte in eine classe rein, der erste Gedanke ich habe eine User klasse, in der sind alle funktionen gesammelt wie als freund hinzufügen, anschreiben, ignorieren, entfernung berechnen etc.
Frage 2:
(zwischenfrage die sich stellte, lädt man die functionen alle mit oder ist es so das sie nur dann ausgelesen werden wenn sie aufgerufen wurden).
Frage 3: extends
extends = vererbung, so wie ich es verstanden habe und Mehrfachvererbung gibt es nicht.
Wie ist das genau gemeint?
gibt es das nicht:
class erste
class zweite extends erste
class dritte extends zweite
oder meinen die
class dritte extends erste,zweite?
oder gar beides nicht machbar?
Frage 4: aufruf der funktion
gut das ich das wiefolgt machen kann ist mir bewusst:
$nutzer = new entfernung;
$user= $nutzer->ort("20");
$entfernung= $nutzer->strecke("5");
$neueStrecke = $nutzer->neueStrecke();
nur wie stelle ich das dann an wenn ich auf einen link click reagieren soll? bsp: delate friend. bisher habe ich es über JS gelöst das bei onclick reagierte und dann die entsprechende PHP datei ausführte. geht das nun mit klassen auch so einfach? onclick(führe function einer Klasse aus)?
// Ja genügt sonst bitte kleine erklärung
Frage 5:
kann es sein das ich ein völlig falsches verständniss von Klassen habe und deswegen so dumme fragen stelle oder ist es normal das man anfangs davor steht wie ein neandertaler vor der Playstation?
So da ich euch hier keinen Roman schreiben möchte bitte ich um entschuldigung für die evt dummen fragen aber getreu dem Motto, wer nicht fragt bleibt dumm bin ich auf die antworten gespannt und mit weiteren gegenfragen muss zu rechnen sein.
lg
bin mir mal wieder die Haara am ausreißen, zumnindest wenn ich noch welche hätte.
Bin erneut an das Thema Klassen und functionen geraten und habe nur eines kapiert:
class functioniert nicht
{
var $dubistzublöd dafür
nun, was funktioniert nicht?
ich denke in erster Linie der Zusammenhang in meinem Kopf da sich für mich nach wie vor nicht der wirkliche Nutzen ableiten lässt.
Als bsp:
Ich bestimme die entfernung 2er Punkte anhand der jeweiligen x/y koordinaten (plz entfernung).
Vorgehen bisher, ich nehme beide user, suche deren PLZ und die dazugehörigen x/y koo und berechne die entfernung. Das ganze in einer eigenen PHP Datei die ich nach bedarf includiere.
So, jetzt will ich das mal mit Klassen und functionen realisieren.
Also nach 10 Aspirin und 3 std kopf zerbrechen setze ich mich mit KIppe und Kaffee voller Tatendrang an meinen Rechner, tippe ein Class entfernung ....
mhmm nicht gut also neu: function neueStrecke ().
Zunächsteinmal wollte ich nur den zusammenhang von Klasse, Objekt und function kennen lernen daher etwas ganz einfaches:
PHP:
<?php
class user
{
var $ort;
function ort($gort)
{
$u_ort = $gort; //ort aus DB nach Angezeigter User
$this->ort= $u_ort;
return $this->ort;
}
}
class entfernung extends user
{
var $distanz;
function strecke($strecke)
{
$this->meinort="5";
return $this->meinort;
}
function neueStrecke()
{
$this->ort=$this->ort / $this->meinort;
return $this->ort;
}
}
$nutzer = new entfernung;
$user= $nutzer->ort("20");
$entfernung= $nutzer->strecke("5");
$neueStrecke = $nutzer->neueStrecke();
echo "$neueStrecke";
ok, zugegeben die Namen sind wirklich nicht clever gewählt jedoch berechnet er mir das richtige, nur Sinnvoll?
Frage 1: Was in eine Klasse packen?
Da stehe ich dann direkt an dem Hauptproblem, was sollte in eine classe rein, der erste Gedanke ich habe eine User klasse, in der sind alle funktionen gesammelt wie als freund hinzufügen, anschreiben, ignorieren, entfernung berechnen etc.
Frage 2:
(zwischenfrage die sich stellte, lädt man die functionen alle mit oder ist es so das sie nur dann ausgelesen werden wenn sie aufgerufen wurden).
Frage 3: extends
extends = vererbung, so wie ich es verstanden habe und Mehrfachvererbung gibt es nicht.
Wie ist das genau gemeint?
gibt es das nicht:
class erste
class zweite extends erste
class dritte extends zweite
oder meinen die
class dritte extends erste,zweite?
oder gar beides nicht machbar?
Frage 4: aufruf der funktion
gut das ich das wiefolgt machen kann ist mir bewusst:
$nutzer = new entfernung;
$user= $nutzer->ort("20");
$entfernung= $nutzer->strecke("5");
$neueStrecke = $nutzer->neueStrecke();
nur wie stelle ich das dann an wenn ich auf einen link click reagieren soll? bsp: delate friend. bisher habe ich es über JS gelöst das bei onclick reagierte und dann die entsprechende PHP datei ausführte. geht das nun mit klassen auch so einfach? onclick(führe function einer Klasse aus)?
// Ja genügt sonst bitte kleine erklärung
Frage 5:
kann es sein das ich ein völlig falsches verständniss von Klassen habe und deswegen so dumme fragen stelle oder ist es normal das man anfangs davor steht wie ein neandertaler vor der Playstation?
So da ich euch hier keinen Roman schreiben möchte bitte ich um entschuldigung für die evt dummen fragen aber getreu dem Motto, wer nicht fragt bleibt dumm bin ich auf die antworten gespannt und mit weiteren gegenfragen muss zu rechnen sein.
lg