久久久久久AV无码免费看大片,亚洲一区精品人人爽人人躁,国产成人片无码免费爱线观看,亚洲AV成人无码精品网站,为什么晚上搞的时候要盖被子

類成員變量被賦予實(shí)例化對(duì)象

時(shí)間:2017-02-23 22:33:27 類型:PHP
字號(hào):    

新學(xué)習(xí)PHP, 對(duì)php訪問類屬性$this->name,$this->age,$this->getName()等可能會(huì)比較容易理解接受, 但看到$this->db->query()這種用法往往會(huì)比較困惑, 感覺有些怪怪的, 為什么會(huì)有連續(xù)"->"的用法呢? 

其實(shí), 這個(gè)也不是很難, 當(dāng)$this->db = new Db()這樣操作后, 那么$this->db整個(gè)就是一個(gè)實(shí)例化對(duì)象了, 所以, 就可以通過$this->db->query()這里訪問Db類里面的方法了, 基本上一些PHP框架的控制器都是按照這種原理來寫的,具體可以看下面的例子.

1. db.php文件代碼[將在構(gòu)造函數(shù)中被實(shí)例化的類文件]


class db{
	public function query(){
		echo "實(shí)際代碼自行腦補(bǔ)";
	}
}
2. Controller.php文件



header("Content-Type: text/html; charset=UTF-8");
include("db.php");
class Controller{
	public $db;
	public function __construct(){
		$this->db = new db(); 
		//$this->db被賦值一個(gè)實(shí)例化對(duì)象, 所以子類就可以通過$this->db->query()來訪問了,之前的PHP框架可以在控制器中如此調(diào)用如:$this->db->query();$this->load->help()等, 實(shí)際上都是利用的這樣一個(gè)原理
	}
}

class Test extends Controller{
	public function getAll(){
		$this->db->query();
		//因?yàn)楦割悓?shí)現(xiàn)了 對(duì) 類屬性 $db 實(shí)例化 賦值, 所以
		//所以這里$this->db是一個(gè)實(shí)例化對(duì)象, 故而可以直接訪問對(duì)象的方法 
	}
}
//$test = new Test();
//$test->db->query();