Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Возможно ли такое (ооп пхп) / 15 сообщений из 15, страница 1 из 1
09.05.2012, 00:24:53
    #37786554
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
Как такое сделать?

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
$hren = new hren();

class nehren {
	function __construct() {
		
	}
	
	function set() {
		echo $hren->get();
	}
}

$nehren = new nehren();



как сделать так чтобы в классе nehren можно было бы использовать объявленный раньше $hren ?
чтоб в самом классе его не обьявлять

в общем требуется однажды обьявить $hren а дальше в классах его использовать
статичный метод не подходит
...
Рейтинг: 0 / 0
09.05.2012, 00:31:54
    #37786559
Возможно ли такое (ооп пхп)
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
$a = new a();

class b {
	function __construct(a $a) {
		$this->a = $a;
	}	
}

$b = new b($a);


?!
...
Рейтинг: 0 / 0
09.05.2012, 00:39:19
    #37786565
Няша ррр
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
prot0type, не понял что ты хочешь, но мб:

Код: php
1.
2.
3.
4.
abstract class A { public function lol() { echo('lol'); } }
class B extends A {}
$b = new B;
$b->lol();
...
Рейтинг: 0 / 0
09.05.2012, 00:55:10
    #37786570
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
как-то так...
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
$a = new a();

class b {
	function __construct(a $a) {
		$this->a = $a;
	}	
}

$b = new b($a);


?!


вот это меня и бесит
я так же в самом начале сделал
потом мне пришла мысль а нафиг так все усложнять

ведь я по просту хочу создать глобальный обьект и потом им пользоваться во всех классах
...
Рейтинг: 0 / 0
09.05.2012, 01:00:15
    #37786573
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
в общем у меня куча файлов классов
и есть общий файл в котором происходит связывание этих файлов

проблема заключается в следующем

после подключения всех классов я делаю
Код: php
1.
2.
3.
4.
//подключаю дофига классов
$mysql = new db();
$set = new settings($mysql);
$theme = new template($mysql,$set);



как видите мне приходится передавать все в конструктор

а хочется не париться с эти

а сделать примерно так

Код: php
1.
2.
3.
4.
//подключаю дофига классов
$mysql = new db();
$set = new settings();
$theme = new template();



ничего не передовать, но в тоже время чтобы в классах было доступны обьекты обьявленные раньше
...
Рейтинг: 0 / 0
09.05.2012, 01:08:25
    #37786574
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
ну на крайняк может есть какие ключевые которые можно поставить перед обьявлениями
типа "глобал" или "статик" или что то типа такого
просто не хватает такой реализации
...
Рейтинг: 0 / 0
09.05.2012, 01:10:14
    #37786575
Возможно ли такое (ооп пхп)
авторничего не передовать, но в тоже время чтобы в классах было доступны обьекты обьявленные раньше
mission impossible! ;)
Код: php
1.
$theme = new template(new db(), new settings());


ведь ты можешь насоздавать кучу экземпляров одного и того же класса!
откуда же другому классу знать какой именно экземпляр предыдущего нужно подхватить!?
...
Рейтинг: 0 / 0
09.05.2012, 01:44:13
    #37786594
Ренат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
prot0type
вот это меня и бесит
я так же в самом начале сделал
потом мне пришла мысль а нафиг так все усложнять

ведь я по просту хочу создать глобальный обьект и потом им пользоваться во всех классах
На этот случай придумали патерн Реестр - это обычный синглтон, но он хранит не 1 экземпляр самого себя, а множество экземпляров других классов. Единствено минусы
1. конструкции слишкомо длинные: к примеру Yii::app()->user, Yii::app()->config или App::module('db')... немного через магию конечно становиться красивей но все же...
2. реестр тот же самый синглтон, и ему свойствены все минусы синглтонов, какие думаю говарит не стоит)
...
Рейтинг: 0 / 0
09.05.2012, 09:54:50
    #37786657
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
Делай от базового класса.
TInterface {__construct(CONFIG)}
TDatabase
TSettings
...
Рейтинг: 0 / 0
09.05.2012, 09:56:33
    #37786658
prot0type
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
а может как то можно сделать $mysql и $set суперглобальными?


и что то я не догоняю в чем отличие?


Код: php
1.
2.
3.
4.
//подключаю дофига классов
$mysql = new db();
$set = new settings($mysql);
$theme = new template($mysql,$set);




Код: php
1.
2.
3.
4.
//подключаю дофига классов
$mysql = new db();
$set = new settings(&$mysql);
$theme = new template(&$mysql,&$set);
...
Рейтинг: 0 / 0
09.05.2012, 10:35:32
    #37786664
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
можно через Dependency injection
...
Рейтинг: 0 / 0
09.05.2012, 14:11:39
    #37786828
Няша ррр
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
prot0type,

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
class Model {
private $_db;

public function __construct($db) {
$this->_db = $db;
}}

class Cart extends Model {
private $_param;

public function __construct($db, $param) {
parent::__construct($db);
$this->_param = $param;
}}
...
Рейтинг: 0 / 0
10.05.2012, 05:36:47
    #37787179
r u
r u
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
Няша ррр,

знаете чем отличаются private, protected и public?
судя по коду - нет
...
Рейтинг: 0 / 0
10.05.2012, 11:27:29
    #37787466
Няша ррр
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
r uНяша ррр,

знаете чем отличаются private, protected и public?
судя по коду - нет

Да ошибся, чо дальше?
...
Рейтинг: 0 / 0
10.05.2012, 11:29:41
    #37787473
r u
r u
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возможно ли такое (ооп пхп)
Няша ррр,

ничо. зато теперь знаете
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Возможно ли такое (ооп пхп) / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]