Advertisement
Guest User

Untitled

a guest
Aug 13th, 2014
399
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.31 KB | None | 0 0
  1. /* Класс поля которого ($user, $log, ...) будут содержать
  2.        экземпляры других классов для работы с БД  
  3. */
  4. class dtb {
  5.     public $user = null; // экземпляр класса dtbUser
  6.     public $log = null;  // экземпляр класса dtbLog
  7.     // и еще десяток разных
  8.    
  9.     private function __construct(&$connectionLink) {
  10.         if ($connectionLink instanceof MongoDB) {
  11.             $this->user = new dtbUser($connectionLink);
  12.             $this->log = new dtbLog($connectionLink);
  13.             // ...
  14.         }
  15.         else
  16.             trigger_error('wrong connection', E_USER_ERROR);
  17.     }
  18. }
  19.  
  20.  
  21. class dtbItem {
  22.     protected $db = null;
  23.     function __construct(&$connectionLink)
  24.         $this->db = $connectionLink;
  25. }
  26.  
  27. class dtbUser extends dtbItem{
  28.     public function getOne() {
  29.         $coll = $this->db->selectCollection('users');
  30.         $obj = $coll->findOne();
  31.         return $obj;
  32.     }
  33.     // куча других функций
  34.  
  35.  
  36. class dtbLog extends dtbItem{
  37.     public function getTwo() {
  38.         $coll = $this->db->selectCollection('log');
  39.         $obj = $coll->findOne();
  40.         return $obj;
  41.     }
  42.     // куча других функций
  43. }
  44.  
  45.  
  46. /* Работает это так: */
  47.  
  48. $conn = new MongoClient();
  49. $dtbs = new dtb($conn);
  50.  
  51. var_dump( $dtbs->user->getOne() );
  52. var_dump( $dtbs->log->getTwo() );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement