Как прикрутить методы одного класса к другому абстрактному

Lemurion

Новичок
Добрый вечер, уважаемые. ООП начал изучать совсем недавно, и уже возникла проблемка. Есть такая конструкция
PHP:
class db {
  //методы
}

abstract class Server {
    protected $_data = array();
    protected $_response = null;
    protected $_timeout = null;
    protected $_started_at = null;
    public function __construct() {
        $this->_started_at = time();
    }
    public function handleRequest() {}
    protected function _makeResponse() {}
    protected function _sendResponse() {
        echo $this->_response();
    }
}

class ENGN extends Server {
    public function __construct($timeout = 360) {
        parent::__construct();
        $this->_timeout = $timeout;
        set_time_limit($timeout + 2);
    }
    
    public function handleRequest() {

 //тут методы которые хочу использовать из класса db
                
                $this->_makeResponse()
                     ->_sendResponse();
            }

            sleep(2);
        } 

    }
}
Собственно суть вопроса: как мне вкрутить класс db чтобы он работал внутри ENGN в виде $this->db->query('something');? ткните пожалуйста носом :)
Заранее благодарен.
 

WMix

герр M:)ller
Партнер клуба
непонятна твоя загвоздка... так?
PHP:
class db {
  public function query( $string ){

 }
}


class ENGN extends Server {
    private $db;
    public setDb( db $db ){
        $this->db = $db;
    }
}
 

radioheaded

PHP нуб
Собственно суть вопроса: как мне вкрутить класс db чтобы он работал внутри ENGN в виде $this->db->query('something');? ткните пожалуйста носом :)
Заранее благодарен.
Тыкаю — http://php.net/manual/ru/language.oop5.php

Серьезно, у вас каша в голове, совершенно нет понимания, что, зачем и почему.

Разберитесь, что такое наследование и зачем его используют.
Разберитесь, что такое абстрактный класс, зачем он нужен и чем он отличается от обычного.
 
Сверху