public(公有):能夠在任何地方被訪問php
protected(受保護):能夠被其自身以及其子類和父類訪問,類的對象也不能夠訪問this
private(私有):只能被其定義所在的類訪問,類的對象也不能夠訪問spa
<?php /** * Define MyClass */ class MyClass { public $public = 'Public'; protected $protected = 'Protected'; private $private = 'Private'; function printHello() { echo $this->public; echo $this->protected; echo $this->private; } } $obj = new MyClass(); echo $obj->public; // Works echo $obj->protected; // Fatal Error echo $obj->private; // Fatal Error $obj->printHello(); // Shows Public, Protected and Private
如上面代碼所示,咱們用一個類的實例對象訪問一個類的私有或者受保護的成員屬性時,會拋出一個致命錯誤。code
訪問類中的私有屬性,通常都會是寫一個public的方法,再返回這個屬性。對象
public function getPrivate() { return $this->private; }