Rofihimam

Untitled

Feb 12th, 2020
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.01 KB | None | 0 0
  1. <?php
  2.     /**
  3.      * Define MyClass
  4.      */
  5.     class MyClass
  6.     {
  7.         public $public = 'Public';
  8.         protected $protected = 'Protected';
  9.         private $private = 'Private';
  10.  
  11.         function printHello()
  12.         {
  13.             echo $this->public;
  14.             echo $this->protected;
  15.             echo $this->private;
  16.         }
  17.     }
  18.  
  19.     $obj = new MyClass();
  20.     echo $obj->public; // Works(
  21.         echo $obj->protected; // Fatal error
  22.         echo $obj->private; // Fatal error
  23.         $obj->printHello(); // Shows Public, Protected, and Private
  24.  
  25.     /**
  26.      * Define MyClass2
  27.      */
  28.     class MyClass2 extends MyClass
  29.     {
  30.         // We can redeclare the public and protected properties, but not private
  31.         public $public = 'Public2';
  32.         public $protected = 'Protected2';
  33.  
  34.         function printHello()
  35.         {
  36.             echo $this->public;
  37.             echo $this->protected;
  38.             echo $this->private;
  39.         }
  40.     }
  41.  
  42.     $obj2 = new MyClass2();
  43.     echo $obj2->public; // Works
  44.     echo $obj2->protected; // Fatal Error
  45.     echo $obj2->private; // Undefined
  46.     $obj2->printHello(); // Shows Public2, Protected2, Undefined
  47. ?>
Advertisement
Add Comment
Please, Sign In to add comment