Сделать родиельский класс, в котором будут грузиться классы для БД, сессии итп в его свойства.
Затем, при создании новых классов екстендить родительский, например:
class MainLogic {
protected $db;
function __construct() {
$this->db = new DB('login', 'pass', 'database'); // получаем инстанс, короче
}
function testDb() {
$this->db->query('...'); // will work!
}
}
class User extends MainLogic {
public function addUser() {
$this->db->query(''); // also will work, тут уже это св-во есть, тк мы его пронаследовали от MainLogic
}
}
P.S. Если класс с логикой только один (что, в большинстве случае, также не может быть правильно) - то просто в __constuct присваивайте $this->db ссылку на класс базы и из методов MainLogic обращайтесь через $this->db.
P.P.S. Не знаю, какой класс для работы с БД юзаете Вы, но для этих дел уже есть ActiveRecord, например.