PHP 抽象方法與抽象類(lèi)abstract關(guān)鍵字介紹及應(yīng)用
來(lái)源:易賢網(wǎng) 閱讀:671 次 日期:2014-10-22 11:21:35
溫馨提示:易賢網(wǎng)小編為您整理了“PHP 抽象方法與抽象類(lèi)abstract關(guān)鍵字介紹及應(yīng)用”,方便廣大網(wǎng)友查閱!

一、密碼式

給數(shù)據(jù)庫(kù)起一個(gè)隨機(jī)復(fù)雜的名稱(chēng),避免被猜到被下載,這種方式在以前很流行,因?yàn)榇蠹叶紝?duì)自己的代碼很有自信。但隨著錯(cuò)誤提示對(duì)數(shù)據(jù)庫(kù)地址的泄露導(dǎo)致數(shù)據(jù)庫(kù)被非法下載,這種方式也就越來(lái)越少人用了。

二、"#"式

在數(shù)據(jù)庫(kù)名稱(chēng)里加上#號(hào),從URL上請(qǐng)求時(shí)#是請(qǐng)求地址和請(qǐng)求參數(shù)的一個(gè)分隔字符,如果知道了數(shù)據(jù)庫(kù)名,直接請(qǐng)求的話(huà),如:http://www.xx.com/access#.mdb,WEB服務(wù)器會(huì)認(rèn)為請(qǐng)求的是access而不是access#.mdb,所以會(huì)提示找不到文件,但是很遺憾,URL中對(duì)于這些特殊的字符都會(huì)有一個(gè)特殊的表示方式,#的特殊表示就是%23,如http://www.xx.com/access%23.mdb,那么access#.mdb將會(huì)被下載。還有如果用FlashGet之類(lèi)的下載工具也可以直接下載。

三、asp式

這種作法是比較專(zhuān)業(yè)但也是很安全的也是現(xiàn)在比較流行的作法,但是現(xiàn)在許多的人只是作了一半,只是將數(shù)據(jù)名改成ASP而以,這樣的話(huà)直接用FlashGet之類(lèi)的下載工具一樣可以將數(shù)據(jù)庫(kù)下載,這種方式的正確作法:

在數(shù)據(jù)庫(kù)內(nèi)創(chuàng)建一個(gè)字段,名稱(chēng)隨意,類(lèi)型是OLE對(duì)象,內(nèi)容設(shè)置為單字節(jié)型的"

這段代碼運(yùn)行完之后將會(huì)在數(shù)據(jù)庫(kù)內(nèi)生成一個(gè)nodownload表,表內(nèi)字段是notdown。如果數(shù)據(jù)庫(kù)內(nèi)已有同名的數(shù)據(jù)表存在請(qǐng)將代碼內(nèi)的nodownload改成自己想要的數(shù)據(jù)表名即可。PHP 抽象方法與抽象類(lèi) abstract 關(guān)鍵字

abstract 關(guān)鍵字用于定義抽象方法與抽象類(lèi)。

抽象方法

抽象方法指沒(méi)有方法體的方法,具體就是在方法聲明的時(shí)候沒(méi)有 {} 括弧以及其中的內(nèi)容,而是直接在聲明時(shí)在方法名后加上分號(hào)結(jié)束。

abstract 關(guān)鍵字用于定義抽象方法,語(yǔ)法:

abstract function function_name();

抽象類(lèi)

只要一個(gè)類(lèi)里面有一個(gè)方法是抽象方法,那么這個(gè)類(lèi)就要定義為抽象類(lèi)。抽象類(lèi)同樣用 abstract 關(guān)鍵字來(lái)定義。

抽象類(lèi)不能產(chǎn)生實(shí)例對(duì)象,通常是將抽象方法做為子類(lèi)方法重載的模板使用的,且要把繼承的抽象類(lèi)里的方法都實(shí)現(xiàn)。實(shí)際上抽象類(lèi)是方便繼承而引入的。

例子:

代碼如下:

<?php

abstract class AbstractClass{

// 定義抽象方法

abstract protected function getValue();

// 普通方法

public function printOut(){

print $this->getValue()."<br />";

}

}

class ConcreteClass extends AbstractClass{

protected function getValue(){

return "抽象方法的實(shí)現(xiàn)";

}

}

$class1 = new ConcreteClass;

$class1->printOut();

?>

四、asa式

這種方式的真諦是利用IIS對(duì)ASA文件的保護(hù),從而使得數(shù)據(jù)庫(kù)文件不能從URL上直接請(qǐng)求下載,但是這種方式被誤解成只要將文件后綴改成ASA就可以了。要知道IIS只是對(duì)global.asa這個(gè)文件名有請(qǐng)求保護(hù),所以這種方式只能將數(shù)據(jù)庫(kù)名設(shè)置為global.asa,而且要注意的是,設(shè)置成global.asa之后最好不要將其放在主機(jī)或虛擬目錄的根目錄里,不然會(huì)被IIS當(dāng)然正常的global.asa文件進(jìn)行嘗試運(yùn)行的

更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢(xún)回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢(xún)?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類(lèi)型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢(xún) | 簡(jiǎn)要咨詢(xún)須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專(zhuān)用圖標(biāo)
聯(lián)系電話(huà):0871-65099533/13759567129 獲取招聘考試信息及咨詢(xún)關(guān)注公眾號(hào):hfpxwx
咨詢(xún)QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專(zhuān)用圖標(biāo)