<?php class c_page_creator_main { function c_page_creator_main() { $db->query( "SELECT * FROM tabela" ); } ?>
<?php class c_page_creator_main { function c_page_creator_main() { $db->query( "SELECT * FROM tabela" ); } ?>
<?php class c_page_creator_main { function c_page_creator_main() { $db->query( "SELECT * FROM tabela" ); } ?>
<?php class c_page_creator_main { public $objDB; function c_page_creator_main() { $this->objDB = Database::getInstance(); // do bazy danych powinieneś użyć singletona $this->objDB ->query( "SELECT * FROM tabela" ); } } ?>
<?php class Object { public function & getDB() { // zwraca obiekt mysql } // i tak dalej } ?>
<?php class myClass extends Object { public function display() { $db = $this->getDB(); } } ?>
<?php class c_my_sql_database_driver() { function query( $query ) { //ciało funkci } } $object_my_sql_database_driver = new c_my_sql_database_driver(); function db_query($query) { // ta funkcja będzie mogła w przyszłości przełaczać na inne drivery bazy za pomocą
switch(); // więc dodatkowo storzę pomost między driverem bazy a klasami. $object_my_sql_database_driver->query($query); } class c_page_creator() { function body_drop() { db_query( 'select coś tam' ); } } ?>
<?php abstract class Object { public function getDB() { return DB::getInstance(); } } class DB { /** * Pola */ /** * Metody */ private function __construct() { $this->connect(); } public function __destruct() { $this->disconnect(); } public function getInstance() { $class = __CLASS__; return self::$instance == null ? self::$instance = new $class : self::$instance; } public function connect() { // polacz sie z baza danych } public function disconnect() { // rozlacz sie z baza danych } public function query($qry) { } } class TwojaKlasa extends Object { public function display() { return $this->getDB()->query('select pole from tabela where pole_id = 1'); } } /** * Przyklad */ $object = new TwojaKlasa(); ?>
<?php $this->connect_id = @mysql_connect( $GLOBALS["db_host"], $GLOBALS["db_user"], $GLOBALS["db_password"] ); ?>
<?php $GLOBALS['sql'] = new Sql(); function sql() { return $GLOBALS['sql']; } //i teraz można już używać ten obiekt wszędzie tak: sql()->query(...); ?>
<?php function sql() { return Sql::getInstance(); } ?>
<?php class X { public function query($sql) { // przykład return $this->getDatabase()->query($sql); } } ?>
<?php abstract class edc_object { /* Pobieranie instancji singletona */ public function db_driver(){ return mysql_db_driver::get_instance(); } /* Pomost dla query */ public function query($sql){ return $this->db_driver()->query($sql); } /* Pomost dla result */ public function fetch_row($result=""){ return $this->db_driver()->fetch_row($result); } /* Tutaj zbiór przydatnych funkcji też jako singleton. Nie wiem czy to dobry sposób. */ public function db_functions(){ return db_functions::get_instance(); } } ?>