<?php
abstract class abstr{
protected $name;
abstract function __construct();
protected function name(){
return $this->name;
}
protected function __destruct(){
return;
}
}
class used extends abstr
{
function __construct(){
$this->name="used";
}
}
$test=new used;
print $test->name();
?>[/php:1:28ea0a47c9]Ten kod wywala mi taki blad
Cytat
Fatal error: Call to protected method abstr::name() from context '' in /usr/local/apache/cgi-bin/classtest.php on line 20
Co tu jest nie tak? Z tego co wiem protected oznacza, ze metoda/wlasciwosc jest dziedziczona. Czy moze w php odnosi sie to tylko do wlasciwosci?
PS.
Z tego wynika, ze __construct() wywoluje sie nie tylko przy new klasa(); ale tez przy zwyklych wywolaniach new klasa;