Advertisement
zero50x

Методы классов

May 5th, 2014
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.65 KB | None | 0 0
  1. class privateParent
  2. {
  3.     private $a;
  4.     private $b;
  5.     private $c;
  6.     function xx()
  7.     {
  8.     }
  9. }
  10. class myGeneral extends privateParent
  11. {
  12.     public function __call($command, $arguments)  // МЕТОД класс наследника пошёл
  13.     {
  14.         if (preg_match('/Helper$/', $command)) {
  15.             $className = 'получение имени класса';
  16.             return new $className();
  17.         }
  18.         return parent::__call($command, $arguments);
  19.     }
  20.     public function first() // МЕТОД класс наследника
  21.     {
  22.         $this->xx();
  23.     }
  24.     public function second() // МЕТОД класс наследника
  25.     {
  26.         $this->xx();
  27.     }
  28. }
  29.  
  30. №№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№
  31.  
  32. class privateParent
  33. {
  34.     private static $count=0;
  35.     private $a;
  36.     public function __construct () { $this->a = ++self::$count; } // МЕТОД класс наследника пошёл
  37.     function xx() { echo $this->a, ' '; }
  38. }
  39.  
  40. class myGeneral extends privateParent
  41. {
  42.     public function __call($name, $args) { // МЕТОД класс наследника пошёл
  43.             return new $name($this);
  44.     }
  45.     public function first() { // МЕТОД класс наследника пошёл
  46.         $this->xx();
  47.     }
  48.     public function second() { // МЕТОД класс наследника пошёл
  49.         $this->xx();
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement