eine klasse mußt du vor der nutzung instanzieren, also ein objekt diesen typs erzeugen (eine instanz der klasse). das geschieht folgendermaßen:
$MyClass=new ClassName;
jetzt hast du über die instanz mit dem namen $MyClass zugriff auf die eigenschaften und methoden der klasse.
eine eigenschaft einer klasse sind einfach gesagt ihre internen variablen (sehr vereinfacht bei php), ihre methoden sind die funktionen innerhalb der klasse. der zugriff erfolgt, anders als z.b. bei C++ mittels $Instanname->Eigenschaft/Methode. hat z.b. eine funktion innerhalb der klasse den selben namen, wie die klasse selbst, so ist es der konstruktor der klasse und wird automatisch bei der instanzierung aufgerufen. ich nehme mal das beispiel der klasse checked_user:
class checked_user
{
var $user; //Einzige Eigenschaft der Klasse
function checked_user() // Methode und Konstruktor der Klasse, wird auf jeden Fall bei der Instanzierung ausgeführt
{
global $PHP_AUTH_USER,$PHP_AUTH_PW;
$auth_users=array('user1'=>'passwort1','user2'=>'passwort2','userN'=>'passwortN'); // Array aus den zugelassenen Usern und ihrer passworte
if(empty($PHP_AUTH_USER)||empty($this->auth_users["$PHP_AUTH_USER"])||$this->auth_users["$PHP_AUTH_USER"]==$PHP_AUTH_PW)
{
$this->generate_auth(); // Konstruktor ruft die methode generate_auth() der eigenen Klasse auf
}
else
{
$this->user=$PHP_AUTH_USER; // Die Eigenschaft $user wird auf den Rückgabewert der Authentifizierung gesetzt
}
}
function generate_auth() // weitere Methode der Klasse
{
header("WWW-Authenticate: Basic realm=\"Gesicherter Bereich\"");
header("HTTP/1.0 401 Unauthorized");
echo "Kein Zutritt ohne Authentifizierung!";
exit;
}
}
$user ist eine (die einzige) eigenschaft der klasse, die funktion checked_user() ihr konstruktor und generate_auth() eine methode der klasse. will ich jetzt die klasse nutzen, so mach ich da so:
$user=new checked_user;
$user ist jetzt ein objekt und eine instanz der klasse.
der konstruktor erledigt in diesem fall den rest.
über $user->user hat man infolgedessen zugriff auf den gesetzten usernamen im weiteren verlauf des scriptes.