radius = $r; $this->hight = $h; } } class SectionTreeChild extends SectionTree { public $wight = 50; public function __construct(){ parent::__construct(233, 23); } public function getRadius() { return parent::$radius; } } // $obj = new SectionTreeChild(); // var_dump($obj->getRadius()); // var_dump(SectionTree::$radius); class ChristmasTree { private $box = []; protected $color = "red"; public function getColor(){ return $this->color; } public function addSection( SectionTree $section) { array_push($this->box, $section); } public function debug() { var_dump($this->box); } public function newSection(int $r, int $h) { return new SectionTree($r, $h ); } } // () - вызов конструктора // $tree = new ChristmasTree(); // $s_1 = $tree->newSection(100, 20); // $s_2 = $tree->newSection(100, 20); // $tree->addSection($s_1); // $tree->addSection($s_2); // $tree->debug(); class DB { const SQL_SELECT_USER = 'select id, name, login from user where id = %'; static private $_instance; public function __construct(){} static public function getInstance() { if (!self::$_instance) { self::$_instance = new self(); } return self::$_instance; } const SQL_SELECT_USE = 'select id, name from user where id = %'; static public function runSQL(){ var_dump(self::SQL_SELECT_USER); } } $obj1 = new DB(); $obj2 = DB::getInstance(); $obj3 = DB::getInstance(); DB::runSQL(); var_dump($obj1 === $obj2);