Klasse
Aus php bar
Inhaltsverzeichnis |
Klasse
Eine Klasse ist ein 'Raum' den sich Funktionen und Variablen teilen. Sie dient als Vorlage (Schablone) für Objekte. Aus einer Klasse können beliebig viele Objekte erstellt werden.
Einfache Klasse in PHP4
1 /** 2 * Beispiel-Klasse 3 */ 4 class meineKlasse 5 { 6 /** 7 * @var mixed $meine_variable Beispiel-Variable 8 */ 9 var $meine_variable; 10 11 /** 12 * Beispiel-Funktion 13 * 14 * @uses $this->meine_variable als Rückgabewert 15 * @return mixed $this->meine_variable 16 */ 17 function meineFunktion() 18 { 19 return $this->meine_variable; 20 } 21 }
Einfache Klasse in PHP5
1 /** 2 * Beispiel-Klasse 3 */ 4 class meineKlasse 5 { 6 /** 7 * @var mixed $meine_variable Beispiel-Variable 8 */ 9 public $meine_variable; 10 11 /** 12 * Beispiel-Funktion 13 * 14 * @uses $this->meine_variable als Rückgabewert 15 * @return mixed $this->meine_variable 16 */ 17 public function meineFunktion() 18 { 19 return $this->meine_variable; 20 } 21 }
Komplexe Klasse in PHP4
1 /** 2 * Beispiel-Klasse 3 */ 4 class meineKlasse 5 { 6 /** 7 * @var integer $id Objekt-ID 8 */ 9 var $id; 10 11 /** 12 * @var string $name Objekt-Name 13 */ 14 var $name; 15 16 /** 17 * Konstruktor 18 * 19 * @uses $this->setId() 20 * @param integer $id neue Objekt-ID 21 */ 22 function meineKlasse($id = 0) 23 { 24 $this->setId($id); 25 } 26 27 /** 28 * setzt die Objekt-ID 29 * 30 * @uses $this->id zum setzen 31 * @param integer $id neue Objekt-ID 32 */ 33 function setId($id) 34 { 35 $this->id = (int) $id; 36 } 37 38 /** 39 * gibt die Objekt-ID zurück 40 * 41 * @uses $this->id als Rückgabewert 42 * @return integer $this->id 43 */ 44 function getId() 45 { 46 return $this->id; 47 } 48 49 /** 50 * setzt den Objekt-Namen 51 * 52 * @uses $this->name zum setzen 53 * @param string$name neuer Objekt-Name 54 */ 55 function setName($name) 56 { 57 $this->name = trim($name); 58 } 59 60 /** 61 * gibt den Objekt-Namen zurück 62 * 63 * @uses $this->name als Rückgabewert 64 * @return string $this->name 65 */ 66 function getName() 67 { 68 return $this->name; 69 } 70 71 /** 72 * gibt den Namen plus ID des Objekts zurück 73 * <code> 74 * $mein_objekt =& new meineKlasse(5); 75 * $mein_objekt->setName('Mein erstes Objekt'); 76 * echo $mein_objekt->get(); // prints Mein erstes Objekt (5) 77 * </code> 78 * 79 * @uses $this->getId() 80 * @uses $this->getName() 81 * @return string Name plus ID in Klammern 82 */ 83 function get() 84 { 85 return $this->getName . ' (' . $this->getId() . ')'; 86 } 87 }
Komplexe Klasse in PHP5
1 /** 2 * Beispiel-Klasse 3 */ 4 class meineKlasse 5 { 6 /** 7 * @var integer $_id Objekt-ID 8 */ 9 protected $_id; 10 11 /** 12 * @var string $_name Objekt-Name 13 */ 14 protected $_name; 15 16 /** 17 * Konstruktor 18 * 19 * @param integer $id neue Obejkt-ID 20 */ 21 function __construct($id = 0) 22 { 23 $this->_id = $id; 24 } 25 26 /** 27 * Setzen einer Eigenschaft 28 * @param integer $property Name der Eigenschaft 29 * @param mixed $value Der Wert der Eigenschaft 30 */ 31 public function __set($property, $value) 32 { 33 switch ($property) { 34 case 'id': // neue Objekt-ID 35 $this->_id = (int) $id; 36 break; 37 case 'name': // neuer Objekt-Name 38 $this->_name = trim($name); 39 break; 40 default: 41 $value = null; 42 } 43 return $value; 44 } 45 46 /** 47 * Gibt eine Eigenschaft zurück 48 * @param string $property Der Name der Eigenschaft 49 * @return mixed 50 */ 51 public function __get($property) 52 { 53 switch ($property) 54 { 55 case 'id': // Objekt-ID 56 $result = $this->_id; 57 break; 58 case 'name': // neuer Objekt-Name 59 $result = $this->_name; 60 break; 61 default: 62 $result = null; 63 } 64 return $result; 65 } 66 67 /** 68 * Gibt den Namen plus ID des Objekts zurück 69 * <code> 70 * $mein_objekt = new meineKlasse(5); 71 * $mein_objekt->name = 'Mein erstes Objekt'; 72 * echo $mein_objekt; // prints Mein erstes Objekt (5) 73 * </code> 74 * 75 * @return string Name plus ID in Klammern 76 */ 77 public function __tostring() 78 { 79 return $this->name . ' (' . $this->id . ')'; 80 } 81 }

