封裝關鍵字ide
public 全局屬性,任何地方均可以訪問函數
protected 表示受保護的,只有本類的子類或父類能夠訪問this
private表示私有的,只有在本類中能夠訪問spa
public | protected | private | |
全局 | 是 | 否 | 否 |
繼承類 | 是 | 是 | 否 |
本類 | 是 | 是 | 否 |
- class Myclass{
- public $name;
- protacted $type;
- function __construct($name){
- $this->name=$name;
- }
- private function myfun (){
- reutrn "這是一個例子";
- ]
- }
本利中有三個成員,兩個成員屬性,一個成員方法。對象
首先咱們初始化對象繼承
//若是要輸出type,私有屬性,必需要使用 __get函數,要修改或賦值,必需要使用__set函數
- $nyclass = new Myclass('個人電腦');
- $myclass->name;//這是沒有任何錯誤的,由於是public屬性
- $myclass->type;//這是錯誤的,由於是protacted屬性
- $myclass->myfun(); //這是錯誤的,由於是private屬性
例子ci
- <?
- class Myclass{
- private $name;
- function __construct($name){
- return $this->name=$name;
- }
- function __get($name){
- return $this->name;
- }
- function __set($n,$v){
- $this->$n=$v;
- }
- function myfun(){
- return "這是一個例子";
- }
- }
- $myclass = new Myclass('個人電腦');
- $myclass->name="你的電腦";
- echo $myclass->name.$myclass->myfun();
- ?>
輸出結果 你的電腦 這是一個例子get