Created
May 30, 2013 07:54
-
-
Save juriad/5676350 to your computer and use it in GitHub Desktop.
Modifikátory přístupu v PHP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
class Predek { | |
private $privatePromenna = 1; | |
protected $protectedPromenna = 2; | |
public $publicPromenna = 3; | |
private function privateGetPrivate() { | |
return $this->privatePromenna; | |
} | |
protected function protectedGetPrivate() { | |
return $this->privatePromenna; | |
} | |
public function publicGetPrivate() { | |
return $this->privatePromenna; | |
} | |
private function privateGetProtected() { | |
return $this->protectedPromenna; | |
} | |
protected function protectedGetProtected() { | |
return $this->protectedPromenna; | |
} | |
public function publicGetProtected() { | |
return $this->protectedPromenna; | |
} | |
private function privateGetPublic() { | |
return $this->publicPromenna; | |
} | |
protected function protectedGetPublic() { | |
return $this->publicPromenna; | |
} | |
public function publicGetPublic() { | |
return $this->publicPromenna; | |
} | |
public function callPrivateGetPrivate() { | |
return $this->privateGetPrivate(); | |
} | |
public function callProtectedGetPrivate() { | |
return $this->protectedGetPrivate(); | |
} | |
public function callPublicGetPrivate() { | |
return $this->publicGetPrivate(); | |
} | |
public function callPrivateGetProtected() { | |
return $this->privateGetProtected(); | |
} | |
public function callProtectedGetProtected() { | |
return $this->protectedGetProtected(); | |
} | |
public function callPublicGetProtected() { | |
return $this->publicGetProtected(); | |
} | |
public function callPrivateGetPublic() { | |
return $this->privateGetPublic(); | |
} | |
public function callProtectedGetPublic() { | |
return $this->protectedGetPublic(); | |
} | |
public function callPublicGetPublic() { | |
return $this->publicGetPublic(); | |
} | |
} | |
class Potomek extends Predek { | |
private function privateGetPrivate2() { | |
return $this->privatePromenna + 10; | |
} | |
protected function protectedGetPrivate2() { | |
return $this->privatePromenna + 10; | |
} | |
public function publicGetPrivate2() { | |
return $this->privatePromenna + 10; | |
} | |
private function privateGetProtected2() { | |
return $this->protectedPromenna + 10; | |
} | |
protected function protectedGetProtected2() { | |
return $this->protectedPromenna + 10; | |
} | |
public function publicGetProtected2() { | |
return $this->protectedPromenna + 10; | |
} | |
private function privateGetPublic2() { | |
return $this->publicPromenna + 10; | |
} | |
protected function protectedGetPublic2() { | |
return $this->publicPromenna + 10; | |
} | |
public function publicGetPublic2() { | |
return $this->publicPromenna + 10; | |
} | |
public function callPrivateGetPrivate2() { | |
return $this->privateGetPrivate2(); | |
} | |
public function callProtectedGetPrivate2() { | |
return $this->protectedGetPrivate2(); | |
} | |
public function callPublicGetPrivate2() { | |
return $this->publicGetPrivate2(); | |
} | |
public function callPrivateGetProtected2() { | |
return $this->privateGetProtected2(); | |
} | |
public function callProtectedGetProtected2() { | |
return $this->protectedGetProtected2(); | |
} | |
public function callPublicGetProtected2() { | |
return $this->publicGetProtected2(); | |
} | |
public function callPrivateGetPublic2() { | |
return $this->privateGetPublic2(); | |
} | |
public function callProtectedGetPublic2() { | |
return $this->protectedGetPublic2(); | |
} | |
public function callPublicGetPublic2() { | |
return $this->publicGetPublic2(); | |
} | |
private function privateGetPrivate() { | |
return parent::privateGetPrivate() + 20; | |
} | |
protected function protectedGetPrivate() { | |
return parent::protectedGetPrivate() + 20; | |
} | |
public function publicGetPrivate() { | |
return parent::publicGetPrivate() + 20; | |
} | |
private function privateGetProtected() { | |
return parent::privateGetProtected() + 20; | |
} | |
protected function protectedGetProtected() { | |
return parent::protectedGetProtected() + 20; | |
} | |
public function publicGetProtected() { | |
return parent::publicGetProtected() + 20; | |
} | |
private function privateGetPublic() { | |
return parent::privateGetPublic() + 20; | |
} | |
protected function protectedGetPublic() { | |
return parent::protectedGetPublic() + 20; | |
} | |
public function publicGetPublic() { | |
return parent::publicGetPublic() + 20; | |
} | |
} | |
$pred = new Predek(); | |
# $pred->privatePromenna; | |
# $pred->protectedPromenna; | |
echo '$pred->publicPromenna: ', $pred->publicPromenna, "\n"; | |
echo "\n"; | |
# $pred->privateGetPrivate(); | |
# $pred->protectedGetPrivate(); | |
echo '$pred->publicGetPrivate(): ', $pred->publicGetPrivate(), "\n"; | |
# $pred->privateGetProtected(); | |
# $pred->protectedGetProtected(); | |
echo '$pred->publicGetProtected(): ', $pred->publicGetProtected(), "\n"; | |
# $pred->privateGetPublic(); | |
# $pred->protectedGetPublic(); | |
echo '$pred->publicGetPublic(): ', $pred->publicGetPublic(), "\n"; | |
echo "\n"; | |
echo '$pred->callPrivateGetPrivate(): ', $pred->callPrivateGetPrivate(), "\n"; | |
echo '$pred->callProtectedGetPrivate(): ', $pred->callProtectedGetPrivate(), "\n"; | |
echo '$pred->callPublicGetPrivate(): ', $pred->callPublicGetPrivate(), "\n"; | |
echo '$pred->callPrivateGetProtected(): ', $pred->callPrivateGetProtected(), "\n"; | |
echo '$pred->callProtectedGetProtected(): ', $pred->callProtectedGetProtected(), "\n"; | |
echo '$pred->callPublicGetProtected(): ', $pred->callPublicGetProtected(), "\n"; | |
echo '$pred->callPrivateGetPublic(): ', $pred->callPrivateGetPublic(), "\n"; | |
echo '$pred->callProtectedGetPublic(): ', $pred->callProtectedGetPublic(), "\n"; | |
echo '$pred->callPublicGetPublic(): ', $pred->callPublicGetPublic(), "\n"; | |
echo "\n"; | |
$po = new Potomek(); | |
# $po->privatePromenna; | |
# $po->protectedPromenna; | |
echo '$po->publicPromenna: ', $po->publicPromenna, "\n"; | |
echo "\n"; | |
# $po->privateGetPrivate(); | |
# $po->protectedGetPrivate(); | |
echo '$po->publicGetPrivate(): ', $po->publicGetPrivate(), "\n"; | |
# $po->privateGetProtected(); | |
# $po->protectedGetProtected(); | |
echo '$po->publicGetProtected(): ', $po->publicGetProtected(), "\n"; | |
# $po->privateGetPublic(); | |
# $po->protectedGetPublic(); | |
echo '$po->publicGetPublic(): ', $po->publicGetPublic(), "\n"; | |
echo "\n"; | |
echo '$po->callPrivateGetPrivate(): ', $po->callPrivateGetPrivate(), "\n"; | |
echo '$po->callProtectedGetPrivate(): ', $po->callProtectedGetPrivate(), "\n"; | |
echo '$po->callPublicGetPrivate(): ', $po->callPublicGetPrivate(), "\n"; | |
echo '$po->callPrivateGetProtected(): ', $po->callPrivateGetProtected(), "\n"; | |
echo '$po->callProtectedGetProtected(): ', $po->callProtectedGetProtected(), "\n"; | |
echo '$po->callPublicGetProtected(): ', $po->callPublicGetProtected(), "\n"; | |
echo '$po->callPrivateGetPublic(): ', $po->callPrivateGetPublic(), "\n"; | |
echo '$po->callProtectedGetPublic(): ', $po->callProtectedGetPublic(), "\n"; | |
echo '$po->callPublicGetPublic(): ', $po->callPublicGetPublic(), "\n"; | |
echo "\n"; | |
# $po->privateGetPrivate2(); | |
# $po->protectedGetPrivate2(); | |
# $po->publicGetPrivate2(); | |
# $po->privateGetProtected2(); | |
# $po->protectedGetProtected2(); | |
echo '$po->publicGetProtected2(): ', $po->publicGetProtected2(), "\n"; | |
# $po->privateGetPublic2(); | |
# $po->protectedGetPublic2(); | |
echo '$po->publicGetPublic2(): ', $po->publicGetPublic2(), "\n"; | |
echo "\n"; | |
# $po->callPrivateGetPrivate2(); | |
# $po->callProtectedGetPrivate2(); | |
# $po->callPublicGetPrivate2(); | |
echo '$po->callPrivateGetProtected2(): ', $po->callPrivateGetProtected2(), "\n"; | |
echo '$po->callProtectedGetProtected2(): ', $po->callProtectedGetProtected2(), "\n"; | |
echo '$po->callPublicGetProtected2(): ', $po->callPublicGetProtected2(), "\n"; | |
echo '$po->callPrivateGetPublic2(): ', $po->callPrivateGetPublic2(), "\n"; | |
echo '$po->callProtectedGetPublic2(): ', $po->callProtectedGetPublic2(), "\n"; | |
echo '$po->callPublicGetPublic2(): ', $po->callPublicGetPublic2(), "\n"; | |
echo "\n"; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment