PHP expert |
|
hallo
Ik was bezig met een class tot ik plots het ingenieus idee kreeg van dit te proberen:
<?php
class Test
{
public function shout()
{
return 'dit is de '.__CLASS__.' class';
}
}
class Stijn
{
public $vari = new Test();
public function shout2()
{
return $this->vari->shout() . ' en dit is de '.__CLASS__.' class';
}
}
$obj = new Stijn();
echo $obj->shout2();
?>
<?php class Test { public function shout() { return 'dit is de '.__CLASS__.' class'; } } class Stijn { public $vari = new Test(); public function shout2() { return $this->vari->shout() . ' en dit is de '.__CLASS__.' class'; } } $obj = new Stijn(); ?>
Normaal zou dit moeten werken want je kan een nieuw object beginnen in een variable (zie $obj = new Stijn(); ) maar ik krijg de error:
Citaat: Parse error: syntax error, unexpected T_NEW in /var/www/boe.php on line 16
In theorie zou dit moeten kloppen (alvast in mijn theorie). Weet iemand soms waarom dit niet werkt? want je kan wel dit doen in een class:
<?php
class Test
{
public function shout()
{
return 'dit is de '.__CLASS__.' class';
}
}
class Stijn
{
public function shout2()
{
$var = new Test();
return $var->shout() . ' en dit is de '.__CLASS__.' class';
}
}
$obj = new Stijn();
echo $obj->shout2();
?>
<?php class Test { public function shout() { return 'dit is de '.__CLASS__.' class'; } } class Stijn { public function shout2() { $var = new Test(); return $var->shout() . ' en dit is de '.__CLASS__.' class'; } } $obj = new Stijn(); ?>
groeten, stijn
|