PHP面向?qū)ο蟆獑卫J絖PHP教程
推薦:使用PHP構(gòu)造函數(shù)構(gòu)造函數(shù)的定義: 在類中創(chuàng)建與類同名的函數(shù),即為構(gòu)造函數(shù)。 (1)構(gòu)造函數(shù)可以帶參數(shù),也可以不帶參數(shù)。 (2)當(dāng)使用構(gòu)造函數(shù)的時(shí)候,可以在實(shí)例化一個(gè)對(duì)象的時(shí)候,同時(shí)調(diào)用了該函數(shù),而無(wú)需在實(shí)例化對(duì)象后,使用方法或者函數(shù)。 (3)構(gòu)造函數(shù)就是對(duì)象的一個(gè)方法。 例子:
單例模式是設(shè)計(jì)模式中比較簡(jiǎn)單的模式,會(huì)在一些特殊的場(chǎng)影得以運(yùn)用,比如:應(yīng)用中只需要一個(gè)對(duì)象實(shí)例存在,這時(shí)使用單例模式能夠節(jié)省內(nèi)存。單例模式體現(xiàn)了面向?qū)ο蠓庋b特性中的“單一職責(zé)”和“對(duì)象自治”原則。
構(gòu)建一個(gè)PHP的單例類需要以下要求:
構(gòu)造函數(shù)為private,防止外部代碼new此對(duì)象。
構(gòu)造函數(shù)為final可以禁止子類覆蓋。
擁有一個(gè)靜態(tài)成員變量來(lái)保存自身實(shí)例。
擁有一個(gè)返回自身實(shí)例,公共且靜態(tài)的方法,此方法負(fù)責(zé)只產(chǎn)生一個(gè)實(shí)例,如果已經(jīng)有一個(gè)實(shí)例則直接返回。
為了防止對(duì)象被克隆,還要重寫__clone()方法
- <?php
- class Database {
- private $_db;
- static $_instance;
- final private function __construct($dbname,$user='root',$password='',$port='3306') {
- $conStr = "dbname=".$dbname." user=".$user." password=".$password." port=".$port;
- $this->_db = pg_connect($conStr);
- }
- private __clone() {};
- public static function getInstance($dbname,$user='root',$password='',$port='3306') {
- if( ! (self::$_instance instanceof self) ) {
- self::$_instance = new self($dbname,$user='root',$password='',$port='3306');
- }
- return self::$_instance;
- }
- public function query($sql) {
- return pg_query($this->_db, $sql);
- }
- }
- ?>
分享:PHP重載方法1.重載 Overload 子類改變父類的方法,為重載。 重載是一種覆蓋性行為,會(huì)將以前的方法覆蓋掉。 2.重載案例: ?php class EMBA_student //聲明EMBA學(xué)生類 { //用var來(lái)定義類的屬性 var $no ; //序號(hào) var $name ; //姓名 var $gender ; //性別 var $age ; //年齡 //方法
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁(yè)面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問(wèn)控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語(yǔ)言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語(yǔ)言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
PHP教程Rss訂閱編程教程搜索
PHP教程推薦
- PHP連接遠(yuǎn)程MYSQL和MYSQL5.1中文亂碼處理方法
- PHP無(wú)法訪問(wèn)遠(yuǎn)程mysql的問(wèn)題分析及解決
- 初學(xué):在PHP開發(fā)中如何使用Session?
- 網(wǎng)站模板:web上存漏洞及原理分析、防范方法
- wamp下修改mysql訪問(wèn)密碼的解決方法
- php正則匹配獲取指定url網(wǎng)頁(yè)頁(yè)面超級(jí)鏈接地址
- php程序調(diào)試方法總結(jié)
- 你或許尚未了解PHP的那10件事情
- PHP將整個(gè)網(wǎng)站生成HTML靜態(tài)
- 淺談PHP企業(yè)級(jí)應(yīng)用之常見緩存技術(shù)篇
- 相關(guān)鏈接:
- 教程說(shuō)明:
PHP教程-PHP面向?qū)ο蟆獑卫J?/strong>
。