Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.12.2013, 10:32
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

PHP наследование в классе модели
Всем привет.
Вообще вопрос изначально звучать должен как паттерны наследования в ооп.
Что мне нужно.
Есть класс работы с моделью ДБ
Есть класс Модель который наследуют все модели через extends
Есть просто классы моделей как Продукт, Собака, Человек и т.д.

Как создать экземпляр класса БД (Сиглтон) в классе Модель и потом иметь доступ к его экземпляру из классов наследников Модели.

Подскажите направление куда рыть.

Пока есть только возможность нипосредственно подкл. класс ДБ и в синглтоне использовать, но подключение во всех файлах моделей а хотелось бы единожды в предке. Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 03.12.2013, 10:38
Аватар для jsru_
Кандидат Javascript-наук
Отправить личное сообщение для jsru_ Посмотреть профиль Найти все сообщения от jsru_
 
Регистрация: 09.04.2013
Сообщений: 149

как вариант: передавай инстанс подключения к базе как параметр при создании инстанса предка, в __construct лови его и присваивай защищенной переменной.
Ответить с цитированием
  #3 (permalink)  
Старый 03.12.2013, 11:01
Аватар для vasa_c
Профессор
Отправить личное сообщение для vasa_c Посмотреть профиль Найти все сообщения от vasa_c
 
Регистрация: 12.03.2008
Сообщений: 183

Что значит "создать в классе"? Создавать надо в объекте.
И доступ к нему нужно иметь из объектов.
Ответить с цитированием
  #4 (permalink)  
Старый 04.12.2013, 10:22
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

Спасибо всем ответившим.
Попробую переформулировать вопрос.
Есть класс А с возможностью работы с БД
Есть класс Б у которого есть экземпляр класса А в поле БД
Есть множество наследников класса Б, но неудается получить доступ к полю класса Б который содержит обьект класса БД,.
Дело в том что класс А работы с БД есть синглтон, а потомки класса Б немогут обратиться к полю протект.
Есть возможность получить доступ для работы с БД из поля класса потомков класса Б, не через методы?
Ответить с цитированием
  #5 (permalink)  
Старый 04.12.2013, 10:24
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

Сообщение от jsru_ Посмотреть сообщение
как вариант: передавай инстанс подключения к базе как параметр при создании инстанса предка, в __construct лови его и присваивай защищенной переменной.

А наследники как? через методы?
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2013, 13:42
Интересующийся
Отправить личное сообщение для Ruzarh Посмотреть профиль Найти все сообщения от Ruzarh
 
Регистрация: 01.05.2011
Сообщений: 22

<?php

class db  {

	private static $_instance;

	private function __construct () 
	{

	}

    public static finction instance()
    {
    	if (is_null(self::$_instance)) {
    		self::$_instance = new self();
    	}
    	return self::$_instance;
    }


}


где надо используй

db::instance();


db::instance();

Последний раз редактировалось Ruzarh, 08.12.2013 в 13:44.
Ответить с цитированием
  #7 (permalink)  
Старый 05.01.2014, 16:46
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Сообщение от Duda.Ml1986@gmail.com
Дело в том что класс А работы с БД есть синглтон,
Синглетон для того и делается, чтобы с любого места добиться от него взаимности. Это ж статика фактически, в извращенной форме.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Связь между страницами с javascript и php ... и обратно okrip25 AJAX и COMET 7 09.01.2012 14:43
mvc вызов модели из модели jetli13 Серверные языки и технологии 2 28.10.2010 12:09
Как передать картинку из javascript в php KIVagant AJAX и COMET 3 12.05.2010 11:54
javascript и php (Вопрос) Гауляйтер Общие вопросы Javascript 3 06.05.2009 09:23