PHP相關知識介紹_第1頁
PHP相關知識介紹_第2頁
PHP相關知識介紹_第3頁
PHP相關知識介紹_第4頁
PHP相關知識介紹_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

PHP相關知識的介紹1.什么是PHPPHP,是英文超級文本預處理語言HypertextPreprocessor的縮寫。PHP是一種HTML內(nèi)嵌式的語言,是一種在服務器端執(zhí)行的嵌入HTML文檔的腳本語言,語言的風格有類似于C語言,被廣泛的運用。PHP的另一個含義是:菲律賓比索的標準符號。 2PHP語言簡介

PHP獨特的語法混合了C、Java、Perl以及PHP自創(chuàng)新的語法。PHP安裝它可以比CGI或者Perl更快速的執(zhí)行動態(tài)網(wǎng)頁。用PHP做出的動態(tài)頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執(zhí)行,執(zhí)行效率比完全生成HTML標記的CGI要高許多;PHP還可以執(zhí)行編譯后代碼,編譯可以達到加密和優(yōu)化代碼運行,使代碼運行更快。PHP具有非常強大的功能,所有的CGI的功能PHP都能實現(xiàn),而且支持幾乎所有流行的數(shù)據(jù)庫以及操作系統(tǒng)3.PHP特性

PHP的特性包括PHP:

1、開放的源代碼:

所有的PHP源代碼事實上都可以得到。

2、PHP是免費的。

和其它技術相比,PHP本身免費。

3、php的快捷性程序開發(fā)快,運行快,技術本身學習快。嵌入HTML:因為PHP可以嵌入HTML語言,它相對于其他語言,編輯簡單,實用性強,更適合初學者。

4、跨平臺性強:由于PHP是運行在服務器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。

5、效率高:

PHP消耗相當少的系統(tǒng)資源。

6、圖像處理:用PHP動態(tài)創(chuàng)建圖像

7、面向?qū)ο瘢涸趐hp4,php5中,面向?qū)ο蠓矫娑加辛撕艽蟮母倪M,現(xiàn)在php完全可以用來開發(fā)大型商業(yè)程序。

8、專業(yè)專注;

PHP支持腳本語言為主,同為類C語言。

4.技術應用集成安全程序

1,偽靜態(tài)

2,靜態(tài)頁面生成

3,數(shù)據(jù)庫緩存

4,過程緩存

5,div+cssw3c標準

6,大負荷

7,分布式

8,jquery框架集成

9,flex

10,桌面程序應用5.Windows下的PHP環(huán)境配置(一)軟件需求:

Windows2000Professional;Apache1.3.19(apache_1.3.19-win32-src-r2.msi);PHP4.0.5(php-4.0.5-Win32.zip);MySQL3.23.38(mysql-3.23.38-win.zip)安裝過程

1.將Apache1.3.19安裝到C:\Web\apache\目錄下。

2.將PHP4.0.5解壓到C:\Web\php\目錄下。

3.將MySQL3.23.38安裝到C:\Web\mysql\目錄下。

4.將C:\web\php\php4ts.dll文件拷貝到C:\WINNT\system32\目錄下。

5.將C:\web\php\php.exel文件拷貝到C:\WINNT\目錄下。

6.將C:\web\php\php.ini-dist文件拷貝到C:\WINNT\目錄下,并將php.ini-dist更名為php.ini。7.運行C:\Web\apache\Apache\Apache.exe-i–n8.運行C:\Web\mysql\bin\mysqld-nt.exe--install9.編輯C:\WINNT\php.ini

找到“extension_dir=./”字段,將其改為extension_dir="C:\myphp\php\extensions"。10.運行C:\Web\apache\Apache\Apache.exe-i–n

Windows下的PHP環(huán)境配置(二)11.編輯C:\Web\apache\Apache\conf\httpd.conf

找到“#BindAddress*”字段將其改為BindAddress。(如果主機有固定IP地址,此處改為主機IP地址。如BindAddress06),找到“ServerName”字段,將其改為ServerNamelocalhost。(如主機有固定主機名,此處改為主機的主機名。如ServerNamebn001)。

找到“ScriptAlias/cgi-bin/"C:/Web/apache/Apache/cgi-bin/"”字段,在其下面加入ScriptAlias/php/"C:/Web/php/"。找到“#AndforPHP4.x,use:”字段,在其后面加入:

AddTypeapplication/x-httpd-php.php3AddTypeapplication/x-httpd-php.php4AddTypeapplication/x-httpd-php.phpAddTypeapplication/x-httpd-php.phtmlActionApplication/x-httpd-php"c:/Web/php/php.exe"

找到“#LoadModuleusertrack_modulemodules/mod_usertrackso”字段,LoadModulephp4_modulec:/web/php/sapi/php4apache.dll

PHP支持的數(shù)據(jù)庫有那些PHP在數(shù)據(jù)庫方面的豐富支持,也是它迅速走紅的原因之一,它支持下列的數(shù)據(jù)庫或是數(shù)據(jù)文件:

·AdabasDDBAdBasedbmfilePro·Informix·InterBase·mSQL·MicrosoftSQLServer·MySQL·Solid·Sybase·ODBC·Oracle8·Oracle·PostgreSQL而在Internet上它也支持了相當多的通訊協(xié)議(protocol),包括了與電子郵件相關的IMAP,POP3;網(wǎng)管系統(tǒng)SNMP;網(wǎng)絡新聞NNTP;帳號共用NIS;全球信息網(wǎng)HTTP及Apache服務器;目錄協(xié)議LDAP以及其它網(wǎng)絡的相關函數(shù)。除此之外,用PHP寫出來的Web后端CGI程序,可以很輕易的移植到不同的操作系統(tǒng)上。例如,先以Linux架的網(wǎng)站,在系統(tǒng)負荷過高時,可以快速地將整個系統(tǒng)移到SUN工作站上,不用重新編譯CGI程序。面對快速發(fā)展的Internet,這是長期規(guī)劃的最好選擇。

PHP中的變量類型PHP有好多種變數(shù);主要有這些:

-數(shù)字(integer-例:32)

-布爾值(boolean-例:TRUE)-字串(string-例:'astringoftext')-NULL-資源(resource)-數(shù)組(array-例:arrayname[2])-對象(object)PHP中的注釋風格//comment/*comment*/#comment<html><head><title>Firstprogram</title></head><body><?phpecho"helloworld";

//echo“$a”;

?></body></html>

8PHP中的面向?qū)ο蟾拍?一)抽象數(shù)據(jù)類型和信息封裝、繼承、多態(tài)。在PHP中是通過類來完成封裝的:

<?php

classsomething(){

var$a;

functionsetA($a){

$this->a=$a;}

functiongetA(){

return$a;

}}$obj=newsomething();

$obj->setA(3);

$num=$obj->getA();

echo$num;?>PHP中的面向?qū)ο蟾拍睿ǘ├^承

<?phpclassauthorextendssomething{var$y;functionsetY($v){$this->y=$v;}functiongetY(){return$this->y;}}?>

PHP現(xiàn)在還不支持多重繼承,所以你不能從兩個或兩個以上類派生出新的類來。你可以在派生類中重定義一個方法,如果我們在"Another"類中重定義了getX方法,我們就不能使用"Something"中的getX方法了。如果你在派生類中聲明了一個與基派同名的數(shù)據(jù)成員,那么當你處理它時,它將“隱藏”基類的數(shù)據(jù)成員。

PHP中的面向?qū)ο蟾拍睿ㄈ┒鄳B(tài)是對象的一種能力,它可以在運行時刻根據(jù)傳遞的對象參數(shù),決定調(diào)用哪一個對象的方法。例如,如果你有一個figure的類,它定義了一個draw的方法。并且派生了circle和rectangle類,在派生類中你覆蓋了draw方法,你可能還有一個函數(shù),它希望使用一個參數(shù)x,并且可以調(diào)用$x->draw()。如果你有多態(tài)性,調(diào)用哪個draw方法就依賴于你傳遞給這個函數(shù)的對象類型。多態(tài)性在象PHP這樣的解釋語言(想象一下一個C++編譯器生成這樣的代碼,你應該調(diào)用哪一個方法?你也不知道你擁有的對象是什么類型的,好,這不是重點)是非常容易和自然的。所以PHP當然支持多態(tài)性。PHP中的構造函數(shù)<?phpclasssomething{

//var$a;

$a;

functionsomething($y){

$this->a=$a;}

functionsetA($a){$this->a=$a;}functiongetA(){return$a;}}

$obj=newsomething(6);?>

OOP的一個很好的機制是使用抽象類。抽象類是不能實例化,只能提供給派生類一個接口。設計者通常使用抽象類來強迫程序員從基類派生,這樣可以確保新的類包含一些期待的功能

PHP中的模板引擎(一)SmartySmarty的特點是將模板編譯成PHP腳本,然后執(zhí)行這些腳本。很快,非常靈活。

HeyesTemplateClass

一個非常容易使用,但功能強大并且快速的模板引擎,它幫助你把頁面布局和設計從代碼中分離。

FastTemplate

一個簡單的變量插值模板類,它分析你的模板,把變量的值從HTML代碼中分離處理。

ShellPage

一個簡單易用的類,可以讓你的整個網(wǎng)站布局基于模板文件,修改模板就能改變整個站點。

STPSimpleTemplateParser

一個簡單、輕量級并且易于使用的模板分析類。它可以從多個模板中組裝一個頁面,把結果頁面輸出到瀏覽器或者文件系統(tǒng)。

OOTemplateClass

一個你可以用在自己程序中的面向兌現(xiàn)的模板類。PHP中的模板引擎(二)SimpleTemplate

一個可以創(chuàng)建和結構化網(wǎng)站的模板引擎。它可以解析和編譯模板。

bTemplate

短小但是快速的模板類,允許你把PHP邏輯代碼從HTML修飾代碼中分離。

Savant

一個強大且輕量級的PEAR兼容模板系統(tǒng)。它是非編譯型的,使用PHP語言本身做為它的模板語言。

ETS-easytemplatesystem

可以使用完全相同數(shù)據(jù)重組模板的模板系統(tǒng)。

EasyTemplatePHP

適用于你的站點的一個簡單但是強大的模板系統(tǒng)。

vlibTemplate

一個快速、全能的模板系統(tǒng),它包含一個緩存和調(diào)試類。

AvanTemplate

多字節(jié)安全的模板引擎,占用很少系統(tǒng)資源。它支持變量替換,內(nèi)容塊可以設置顯示或隱藏。

GrafxSoftware’sFastTemplate

一個修改版本的FastTemplate系統(tǒng),它包括緩存功能,調(diào)試控制臺以及沉默去除為賦值塊。PHP中的模板引擎(三)TemplatePower

一個快速、簡單、功能強大的模板類。主要功能有嵌套的動態(tài)塊支持,塊/文件包含支持以及顯示/隱藏未賦值的變量。TagTemplate

這個庫的功能被設計來使用模板文件,同時允許你從HTML文件檢索信息。htmltmpl:templatingengine

一個適用于Python和PHP的模板引擎。它面向希望在項目中分離代碼和設計的web應用開發(fā)人員。PHPClassforParsingDreamweavertemplates

一個分析Dreamweaver模板的簡單類,被用于Gallery2和WordPress的自定義模塊中。MiniTemplator(TemplateEngine)

針對HTML文件的一個緊湊型模板引擎。對于模板變量和塊定義它具有簡單的語法。其中塊可以嵌套。PHP中的模板引擎(四)LayoutSolution

簡化網(wǎng)站開發(fā)和維護。它擁有常用的變量和頁面元素使你不需要重復做頁面布局工作。CachedFastTemplate

它已經(jīng)納入FastTemplate,允許你緩存模板文件,甚至可以在分離的塊內(nèi)容上緩存不同的規(guī)格。TinyButStrong

一個支持MySQL,Odbc,Sql-Server和ADODB的模板引擎。它包含7個方法和兩個屬性。BrianLozier’sphpbasedtemplateengine

只有2K大小,非??觳⑶沂敲嫦?qū)ο笤O計。

WACT

一個從設計中分離代碼的模板引擎。PHPTAL

一個PHP下面的XML/XHTML模板庫。

PHP代碼實例(一)HELLOWORLD<?php$str=“HelloWorld!”;echo$str;?>http://localhost//demo/hello.php在地址欄里輸入時,就會出現(xiàn)HelloWorld!PHP代碼實例(二)ifelseifelse的使用Isok.php

<?phpfunctionisOk($a){if($a==1){echo“itis”.$a;

}elseif($a==2){echo“itis”.$a;}else{echo“itis”.$a;}}echoisOk(2);?>

http://localhost:80/demo/isok.php

頁面會輸出itis2

PHP代碼實例(三)switch的使用Ident掃描(IdentScanning)

<?phpfunctioncheck($n){switch($n){case0:$a=1;break;case1:$a=2;...casen:$a=n;default:$a=0;}echocheck(2);

}?>

常見Nmap掃描方式選項(Options)

除了以上這些掃描,Nmap還提供了無數(shù)選項.有一個是"-PT",,我們已經(jīng)介紹過了.在目標機或網(wǎng)絡上常見的未經(jīng)過濾的端口,進行TCP"ping"掃描.

另一個選項是"-P0".在缺省設置下試圖掃描一個端口之前,Nmap將用TCPping"和ICMPecho命令ping一個目標機,如果ICMP和TCP的探測掃描得不到響應,目標主機或網(wǎng)絡就不會被掃描,即使他們是運行著的.而"-P0"選項允許在掃描之前不進行ping,即可進行掃描.

你應該習慣使用"-v"命令,它詳細列出所有信息,能和所有的掃描選項一起使用.你能反復地使用這個選項,獲得有關目標機的更多信息.

使用"-p"選項,可以指定掃描端口.比如,攻擊者想探測你的web服務器的ftp(port21),telnet(port23),dns(port53),http(port80),想知道你所使用的操作系統(tǒng),它將使用SYN掃描.

#nmap-sS-p21,23,53,80-O-v

Snort簡介在1998年,MartinRoesch先生用C語言開發(fā)了開放源代碼(OpenSource)的入侵檢測系統(tǒng)Snort.直至今天,Snort已發(fā)展成為一個多平臺(Multi-Platform),實時(Real-Time)流量分析,網(wǎng)絡IP數(shù)據(jù)包(Pocket)記錄等特性的強大的網(wǎng)絡入侵檢測/防御系統(tǒng)(NetworkIntrusionDetection/PreventionSystem),即NIDS/NIPS.Snort符合通用公共許可(GPL——GUNGeneralPubicLicense),在網(wǎng)上可以通過免費下載獲得Snort,并且只需要幾分鐘就可以安裝并開始使用它.snort基于libpcap。

snort系統(tǒng)組成:snort由三個重要的子系統(tǒng)構成:數(shù)據(jù)包解碼器,檢測引擎,日志與報警系統(tǒng)。

Snort有三種工作模式:嗅探器、數(shù)據(jù)包記錄器、網(wǎng)絡入侵檢測系統(tǒng)。嗅探器模式僅僅是從網(wǎng)絡上讀取數(shù)據(jù)包并作為連續(xù)不斷的流顯示在終端上。數(shù)據(jù)包記錄器模式把數(shù)據(jù)包記錄到硬盤上。網(wǎng)路入侵檢測模式是最復雜的,而且是可配置的。我們可以讓snort分析網(wǎng)絡數(shù)據(jù)流以匹配用戶定義的一些規(guī)則,并根據(jù)檢測結果采取一定的動作。Ntop簡介Ntop是網(wǎng)絡流量監(jiān)控工具。其重要功能有以下這些:1、自動從網(wǎng)絡中識別有用信息2、將截獲的數(shù)據(jù)包轉換成易于識別的格式3、對網(wǎng)絡通信失敗的情況進行分析4、探測網(wǎng)絡環(huán)境中的瓶頸5、記錄網(wǎng)絡通信的時間和過程它可以通過分析網(wǎng)絡流量來確定網(wǎng)絡上存在的各種問題;也可以用來判斷是否有黑客正在攻擊網(wǎng)絡系統(tǒng);還可以很方便地顯示出特定的網(wǎng)絡協(xié)議、占用大量帶寬的主機、各次通信的目標主機、數(shù)據(jù)包的發(fā)送時間、傳遞數(shù)據(jù)包的延時等詳細信息。通過了解這些信息,網(wǎng)管員可以對故障做出及時的響應,對網(wǎng)絡進行相應的優(yōu)化調(diào)整,以保證網(wǎng)絡運行的效率和安全。Nagios簡介Nagios是一個在linux及unix環(huán)境下運行的監(jiān)控系統(tǒng)和網(wǎng)絡的應用程序,它監(jiān)控您所指定的主機和服務,并在情況變得更糟或更好時提醒您注意。Nagios包括以下一些功能:1、監(jiān)控網(wǎng)絡服務(SMTP、POP3、HTTP、NNTP、PING等)2、監(jiān)控主機資源(處理器負載、磁盤使用情況等)3、簡單的插件設計允許用戶可以很簡易地開發(fā)它們自己的服務檢查4、并行服務檢查5、可以通過"parent"來定義網(wǎng)絡主機的繼承,可以檢測和區(qū)分主機的當機狀態(tài)和不可達狀態(tài)6、在服務或主機產(chǎn)生問題和修復時獲得通知(通過郵件、頁面或用戶定制的方式)7、可以在服務和主機事件運行期間定義事件處理器,以便主動解決問題。8、日志文件自動循環(huán)9、支持冗馀監(jiān)控主機的實現(xiàn)10、可選的Web界面,該界面用于查看當前網(wǎng)絡狀態(tài)、通知和問題列表、日志文件等Nessus簡介Nessus被認為是目前全世界最多人使用的系統(tǒng)漏洞掃描與分析軟件??偣灿谐^75,000個機構使用Nessus作為掃描該機構電腦系統(tǒng)的軟件。Nessus的特色:*提供完整的電腦漏洞掃描服務,并隨時更新其漏洞數(shù)據(jù)庫。*不同于傳統(tǒng)的漏洞掃描軟件,Nessus可同時在本機或遠端上搖控,進行系統(tǒng)的漏洞分析掃描。*其運作效能能隨著系統(tǒng)的資源而自行調(diào)整。如果將主機加入更多的資源(例如加快CPU速度或增加內(nèi)存大小),其效率表現(xiàn)可因為豐富資源而提高。*可自行定義插件(Plug-in)*NASL(NessusAttackScriptingLanguage)是由Tenable所開發(fā)出的語言,用來寫入Nessus的安全測試選項。*完整支持SSL(SecureSocketLayer)。Nessus簡易使用說明1.執(zhí)行Nessus。2.在Plugins的選單畫面中,選取您希望分析的漏洞的服務類型,例如拒絕服務式攻擊(DoS)。3.在ScanOptions的菜單中,*PortRange:輸入您希望掃描的端口(Port)范圍*Optimizethetest:優(yōu)化您的掃描程序。建議選取。其他選項建議保持默認。4.在TargetSelection選單當中,輸入您希望掃描的主機IP地址5.按"StartScan"開始掃描TcpTrack簡介Tcptrack是個能夠顯示特定端口上有關TCP連接的嗅探器,他會監(jiān)視正在發(fā)生的所有的連接,并且以一種友好的界面顯示相關信息。雖然他采用字符用戶界面,卻易于理解和查看。Tcptrack隨目前流行的幾種Linux發(fā)行版本打包發(fā)行。用戶能http://www.rhythm.cx/%7Esteve/devel/tcptrack/下載其源碼。它為我們提供了一個監(jiān)視網(wǎng)絡通信的方法,能提供的信息有如下幾個方面:●源地址和端口●目標地址和端口●連接狀態(tài)●空閑時間●帶寬利用Tcptrack還具有過濾特性,他使用pcap過濾標準(和用于tcpdump標準相同)。Rrdtool簡介所謂的“RoundRobin”其實是一種存儲數(shù)據(jù)的方式,使用固定大小的空間來存儲數(shù)據(jù),并有一個指針指向最新的數(shù)據(jù)的位置。RRD存放數(shù)據(jù)類型可以適合時間序列的數(shù)據(jù)。就是說你必須能夠在時間的幾個點上度量某些值,并提供這些信息給RRDtool。如果你能夠做到這一點,RRDtool就能夠存儲它們。這些數(shù)值必須是數(shù)字,但是不一定要是整數(shù),在與MRTG合用時。RRDtool用途

RRDtool源自MRTG(多路由器流量繪圖器)。MRTG是有一個大學連接到互聯(lián)網(wǎng)鏈路的使用率的小腳本開始的。MRTG后來被當作繪制

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論