Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Neuerungen in PHP 5  Teil von  OOP und PHP 5
Professional CronJob-Service

Suche

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
 
OOP – Rundgang: Seite 1

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen



In älteren PHP-Generationen wurden Objekte wie simple Datentypen behandelt, dies hat sich nun geändert. Objekte verweisen nun nicht mehr auf ihren Wert (by value), sondern auf ihr Handle (by reference), ein Handle stellt dabei einen Verweis auf einen Objektbezeichner dar.

Um die Neuerungen aus PHP 5 im Überblick darzustellen, sollten wir uns einem Beispiel zuwenden.

Beispiel

<?php

//--- class ---/
//
// Aufruf zum erstellen einer Klasse!
// Alles, was sich innerhalb der geschweiften
// Klammern des Klassenaufrufs befindet,
// unterliegt der strengen Klassenhierachie
// von PHP 5

class MeineKlasse {

  //
  //--- var ---
  //
  // Die Variablendefinitionen, die innerhalb
  // der Klasse existent sind! Optional können
  // hier Parameter vordefiniert werden!
  // (String,Array,Boolean,Integer)
  //

  var $zeit;
  var $eingabe;
  var $meldung = "Ausgabe beendet!";

  //
  //--- private ---
  //
  // Mit Private definiert man Parameter, die nur
  // innerhalb dieser Klasse aufgerufen werden
  // können und somit NICHT vererbbar sind und von
  // sogenannten Subklassen (Unterklassen) nicht
  // abgerufen werden können!
  //

  private $MathePI;

  //
  //--- __construct ---
  //
  // Diese Funktion wird beim Aufruf der Klasse
  // Automatisch aufgerufen! Dem Konstruktor kann
  // man optionale Parameter  beim Aufruf der Klasse
  // übergegeben. Dieser dient dazu, die Variablen
  // eines Objekts zu initialisieren. Er kann und
  // darf NIE Funktionsergebnis liefern!
  //

  function __construct($eingabe, $zeit) {
    // Nehme den Parameter entgegen und weise ihm die
    // vordefinierten Variable eingabe und zeit zu.
    $this->eingabe = $eingabe;
    $this->zeit = $zeit;
  }

  //
  //--- protected ---
  //
  // Mit protected werden innerhalb der Klasse
  // Funktionen definiert, die nur in der Klasse
  // selbst von anderen Funktionen aufgerufen
  // werden können! Sie sind daher außerhalb
  // der Klasse NICHT ausführbar.
  //
  // Hinweis: print & echo Befehle haben hier
  // nichts zu suchen!
  //

  protected function saved_funk() {
    // Nehme Eigenschaft input und rufe die private
  // Funktion auf!
    return floor(($this->eingabe)*($this->private_funk()));
  }

  //
  //--- public ---
  //
  // Mit public hingegen definiert man eine
  // Funktion, die innerhalb als auch außerhalb
  // der Klasse angesprochen werden darf! Dies
  // gilt übrigens auch für Variablen!
  //

  public function ausgabe_funk() {
      // Rufe die geschützte Funktion auf!
      return $this->saved_funk();
  }

  //
  //--- private ---
  //
  // Der Parameter private ist mit der protected-
  // Funktion vergleichbar, wobei er noch strikter
  // vorgeht. Er verhindert eine Vererbung an
  // weitere Klassen. Privat ist nur in der
  // definierten Superklasse erreichbar und sonst
  // nirgends!
  //

  private function private_funk() {
    // Zuweisung des Werts PI an die Eigenschaft
  // MathePi
    return $this->MathePI = M_PI;
  }

  //
  //--- __destruct ---
  //
  // Ist eine Callback-Funktion, die bei jedem
  // Aufruf der Klasse zurückgegeben wird! Daher
  // auch NICHT Explizit aufgerufen werden muss!
  // Sie ist dann sinnvoll, wenn man einen bestimmten
  // Wert fest zurückgeben möchte! Es werden nur
  // echo- und print-Befehle wiedergegeben!
  //
  // Ausnahme ist hier das Schreiben in Sessions
  // oder Cookies, die zuvor definiert wurden!
  //

  function __destruct() {
    $inhalt  = "Ausgabe " . $this->zeit . "<br>";
    $inhalt .= "Von <b>" . __FUNCTION__ . "</b> aus " . $this;
    $inhalt .= " der Superklasse <b>" . __CLASS__ . "</b><br>";
    $inhalt .= $this->meldung . "<br>";
    echo $inhalt;

  }
}
?>




Zugriffsbeschränkung (Datenkapselung)
 




:: Premium-Partner ::

Webhosting/Serverlösungen

PSW GROUP GmbH & Co. KG weitere Premium-Partner
 

:: SELFPHP Sponsor ::

ionCube Ltd. weitere Sponsoren
 


:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Webhosting/Serverlösungen

Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?

Sie sind nur ein paar Klicks davon entfernt!


 

Ausgewählter Tipp im Bereich PHP-Skripte


Tage eines Monats ermitteln

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Byte in ein gut lesbares Format (abgekürzt) umrechnen (Binärpräfix)

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de