php中this和self的區(qū)別是:self調(diào)用的是類,而$this調(diào)用的是實(shí)例化的對(duì)象。self可以訪問(wèn)本類中的靜態(tài)屬性和靜態(tài)方法,以及const定義的常量,this可以調(diào)用本類中的方法和屬性。
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供鼓樓網(wǎng)站建設(shè)、鼓樓做網(wǎng)站、鼓樓網(wǎng)站設(shè)計(jì)、鼓樓網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、鼓樓企業(yè)網(wǎng)站模板建站服務(wù),十載鼓樓做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
區(qū)別:
self調(diào)用的是類,而$this調(diào)用的則是實(shí)例化的對(duì)象。
(推薦教程:php教程)
下面我們來(lái)詳細(xì)說(shuō)明一下:
1、self可以訪問(wèn)本類中的靜態(tài)屬性和靜態(tài)方法,可以訪問(wèn)父類中的靜態(tài)屬性和靜態(tài)方法。用self時(shí),可以不用實(shí)例化。
代碼示例:
class self_test { static $instance; public function __construct(){ self::$instance = 'instance';//靜態(tài)屬性只能通過(guò)self來(lái)訪問(wèn) } public function tank(){ return self::$instance;//訪問(wèn)靜態(tài)屬性 } } $str = new self_test(); echo $str->tank();
結(jié)果輸出:
instance
2、self可以訪問(wèn)const定義的常量
代碼示例:
class self_test { const NAME = 'tancy'; public function tank(){ return self::NAME; } } $str = new self_test(); echo $str->tank();
三、this可以調(diào)用本類中的方法和屬性,也可以調(diào)用父類中的可以調(diào)用的方法和屬性,除了靜態(tài)屬性和const常量,基本上都可以使用this調(diào)用。
代碼示例:
class self_test { public $public; private $private; protected $protected; public function __construct(){ $this->public = 'public'; $this->private = 'private'; $this->protected = 'protected'; } public function tank(){ return $this->public; } public function dell(){ return $this->private; } public function datesrt(){ return $this->protected; } } $str = new self_test(); echo $str->tank(); echo "</br>"; echo $str->dell(); echo "</br>"; echo $str->datesrt();
結(jié)果:
public private protected
總結(jié):self是引用靜態(tài)類的類名,而$this是引用非靜態(tài)類的實(shí)例名。
本文名稱:php中this和self的區(qū)別是什么
文章鏈接:http://www.rwnh.cn/article34/cphope.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、服務(wù)器托管、網(wǎng)站策劃、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)