Hey,
ich habe ein kleines Problem, und zwar übergebe ich aus der Klasse mensch mit return $this -> name einen Namen, ich greife aus der Klasse auto extends mensch auf mensch zu, und möchte return $this -> name ausgeben, das klappt aber voll nicht, vielleicht kann mir jemand auf die Sprünge helfen?
PHP
<?php
class mensch
{
private $name;
private $geld;
function __construct($name, $geld)
{
$this -> name = $name;
$this -> geld = $geld;
print '<p>Es gibt jetzt <em>'. $this -> name .'</em>, er besitzt <strong>'. $this -> geld .'</strong> Auro.</p>';
return $this -> name;
}
}
class auto extends mensch
{
public $farbe;
public $standort;
private $besitzer;
private $baujahr;
private $offen = 0;
function __construct($farbe, $baujahr)
{
// $this -> besitzer = $besitzer;
$this -> farbe = $farbe;
$this -> baujahr = $baujahr;
return;
}
function oeffnen($schluesselnummer)
{
if(round($this -> baujahr / 11) == round($schluesselnummer / 11))
{
if($this -> offen == 0)
{
if(0 == $this -> offen)
{
print '<p>'. $this -> name .'s Auto ist jetzt offen!</p>';
$this -> offen(1);
}
elseif(1 == $this -> offen)
{
print '<p>Warum wollen Sie ein offenes Auto öffnen?</p>';
}
}
elseif($this -> offen == 1)
{
print '<p>Warum wollen Sie ein offenes Auto öffnen?</p>';
}
}
else
{
print '<p>Sie haben nicht den richtigen Schlüssel um '. $this -> name .'s Auto zu öffnen!</p>';
}
}
function schliessen($schluesselnummer)
{
if(round($this -> baujahr / 11) == round($schluesselnummer / 11))
{
if($this -> offen == 1)
{
if(1 == $this -> offen)
{
print '<p>'. $this -> name .'s Auto ist jetzt geschlossen!</p>';
$this -> offen(1);
}
elseif(0 == $this -> offen)
{
print '<p>Warum wollen Sie ein geschlossenes Auto schliessen?</p>';
}
}
elseif($this -> offen == 1)
{
print '<p>Warum wollen Sie ein offenes Auto öffnen?</p>';
}
}
else
{
print '<p>Sie haben nicht den richtigen Schlüssel um '. $this -> name .'s Auto zu öffnen!</p>';
}
}
private function offen($offen)
{
$this -> offen = $offen;
}
function fahren($ziel)
{
if(1 == $this -> offen)
{
print '<p>'. $this -> name .'s Auto ist nun an folgendem Standort: <strong>'. $ziel .'</strong></p>';
$this -> standort = $ziel;
}
elseif(0 == $this -> offen)
{
print '<p>Sie müssen '. $this -> name .'s Auto öffnen wenn Sie damit fahren wollen!</p>';
}
}
}
class lackiererei
{
public $farbe;
public $kosten;
}
$mensch = new mensch('Peter', '2500');
$auto = new auto('rot', '2010');
$auto->fahren('hier');
$auto->oeffnen('2010');
$auto->fahren('da');
$auto->schliessen('2010');
?>
Alles anzeigen
Selbiges schlägt auch hier fehl:
PHP
<?php
class mensch
{
private $name;
function __construct($name)
{
$this -> name = $name;
// print $this -> name;
return $this -> name;
}
}
class ausgabe extends mensch
{
private $alter;
function __construct()
{
print $this -> name;
}
}
$mensch = new mensch('Herbert');
$ausgabe = new ausgabe();
?>
Alles anzeigen