У меня действительно большой сценарий.
Он имеет класс базы данных, базовый класс, класс аутентификации пользователя, класс аутентификации посредников, класс PayPal IPP, класс загрузок и класс плагинов
Базовый класс расширяет класс базы данных следующим образом:
class Base extends database
{
var $userid;
var $root;
var $config
function Base($username, $password, $host, $database)
{
// Init DB
$this -> database($hostname, $database, $username, $password);
$this -> config = $this -> fetch(...);
// and the code goes on
}
function anyFunction()
{
$this -> Downloads -> dloadFunction();
}
}
class users extends Base
{
var $userData;
function users()
{
// initialize user, check if he is logged in, if he has cookies, load the user vars in $this -> userData
}
function userFunction1()
{
$this -> anyFunction();
}
}
class resellers extends Base
{
var $resellerData;
function resellers()
{
// initialize resellers, check if he is logged in, if he has cookies, load the user vars in $this -> resellerData
}
}
class IPN extends Base
{
}
class Downloads extends Base
{
function dloadFunction()
{
}
}
class Plugins extends Downloads
{
}
?>
И я называю свой код так:
<?php
$Base = new Base($user, $pass, $host, $db);
$user = new user();
$Base -> user = $user;
$reseller = new reseller();
$Base -> reseller = $reseller;
$downloads = new Downloads();
$downloads -> Plugins = new Plugins();
$Base -> Downloads = $downloads;
$Base -> users -> updateEmail();
// and the code goes on..
?>
Я думаю, что структура действительно плохая.
Вот почему я хочу реализовать синглтон метод.
как мне этого добиться?
Пожалуйста, помогите.