孫鵬
PHP是一種互聯(lián)網(wǎng)語(yǔ)言,它的應(yīng)用是全球最普及、最廣泛的語(yǔ)言之一,它具有開(kāi)放的源代碼,除此以外還有獨(dú)特的語(yǔ)法結(jié)構(gòu),不僅能夠被多種數(shù)據(jù)庫(kù)支持,而且還支持跨平臺(tái)的操作和面向?qū)ο蟮木幊?。利用PHP我們可以輕松地進(jìn)行Web開(kāi)發(fā),輕松地制作新聞系統(tǒng)、動(dòng)態(tài)網(wǎng)站等輕松地實(shí)現(xiàn)對(duì)文件以及文件夾的控制;輕松地進(jìn)行電子商務(wù)網(wǎng)站的開(kāi)發(fā)、數(shù)據(jù)的加密等等。本文將介紹基于PHP+MySQL網(wǎng)絡(luò)環(huán)境下的網(wǎng)站開(kāi)發(fā)。
隨著科技的發(fā)展和社會(huì)的進(jìn)步,企業(yè)的宣傳越來(lái)越受到企業(yè)重視,成為了企業(yè)發(fā)展的一個(gè)重要手段,一般的傳統(tǒng)宣傳途徑就是利用電視、媒體、報(bào)紙等等,而網(wǎng)站這個(gè)新型的科技產(chǎn)物也成為了企業(yè)宣傳不可或缺的一個(gè)新途徑。如今,互聯(lián)網(wǎng)已經(jīng)成為了一個(gè)比較重要的商業(yè)渠道,不僅可以向社會(huì)展示實(shí)力,還可以提升形象、銷售產(chǎn)品。因此,網(wǎng)站的建設(shè)趨向于規(guī)?;蜕虡I(yè)化,這是一個(gè)必然的趨勢(shì),這就要求網(wǎng)站開(kāi)發(fā)的技術(shù)還應(yīng)該有更高的水平。以PHP+MySQL為基礎(chǔ)的網(wǎng)站建設(shè),因?yàn)樗梅í?dú)特成為了眾多IT公司在網(wǎng)站建設(shè)方面的首要選擇。
網(wǎng)站開(kāi)發(fā)環(huán)境分析
PHP語(yǔ)言。PHP語(yǔ)言是可以在服務(wù)器上開(kāi)放運(yùn)行的一種腳本語(yǔ)言,功能比較強(qiáng)大,但若實(shí)現(xiàn)這個(gè)功能還需要有超文本嵌入的標(biāo)記語(yǔ)言。為了利于學(xué)習(xí)與應(yīng)用方面更加廣泛,在語(yǔ)法上PHP吸收了C語(yǔ)言、Java語(yǔ)言和Perl的特點(diǎn),這些語(yǔ)法的吸取都使用于網(wǎng)站開(kāi)發(fā)領(lǐng)域。網(wǎng)站開(kāi)發(fā)人員一般情況下進(jìn)行網(wǎng)站開(kāi)發(fā)的首選就是PHP語(yǔ)言,因?yàn)镻HP語(yǔ)言在編輯風(fēng)格上與c語(yǔ)言有很多相似的地方。一般情況下,PHP在網(wǎng)絡(luò)服務(wù)器上運(yùn)行的過(guò)程是:網(wǎng)絡(luò)服務(wù)器上一般會(huì)有各種后綴的文件請(qǐng)求,比如后綴為.php、.htm、.html的文件的請(qǐng)求,后綴不同服務(wù)器運(yùn)行的先后次序就會(huì)不同,.php的文件會(huì)被服務(wù)器優(yōu)先執(zhí)行,執(zhí)行的同時(shí)還需要對(duì)運(yùn)行條件進(jìn)行分析并用超文本標(biāo)記語(yǔ)言顯示,然后才能在瀏覽器顯示;但是后綴為.htm或者.html文件請(qǐng)求顯示在網(wǎng)絡(luò)服務(wù)器上,所設(shè)計(jì)的內(nèi)容就會(huì)在打開(kāi)瀏覽器的時(shí)候就可以直接顯示出來(lái)。
PHP語(yǔ)言的特點(diǎn)。PHP自產(chǎn)生以來(lái)不僅一直被運(yùn)用還一直在發(fā)展,這是因?yàn)镻HP兼具其他語(yǔ)言也具有的優(yōu)良功能,而且PHP語(yǔ)言也有它自己的優(yōu)點(diǎn)??偟膩?lái)說(shuō),PHP語(yǔ)言有以下特點(diǎn):1)PHP語(yǔ)言是開(kāi)放性語(yǔ)言,顧名思義在服務(wù)器上進(jìn)行任何的網(wǎng)站開(kāi)發(fā)不需要任何支付而是可以免費(fèi)使用,在網(wǎng)站開(kāi)發(fā)方面就減少了開(kāi)發(fā)成本。2)對(duì)于網(wǎng)站開(kāi)發(fā)者很容易上手,掌握起來(lái)更容易,因?yàn)樗哂信cc語(yǔ)言很相似的編程語(yǔ)法。3)PHP語(yǔ)言功能強(qiáng)大。可以對(duì)任意大、中、小型網(wǎng)站進(jìn)行開(kāi)發(fā)。4)強(qiáng)大數(shù)據(jù)庫(kù)的支持,比如ORACLE、DBASE、MySQL、INTERBASE等,而且升級(jí)時(shí)候所需要的漏洞補(bǔ)丁也能很快的植入到核心部位。5)代碼執(zhí)行效率高??梢员菴G或者Perl更快地執(zhí)行動(dòng)態(tài)網(wǎng)頁(yè),能夠如此快速的執(zhí)行是將程序嵌入到HTML文檔中去執(zhí)行;編譯后的代碼也可以被PHP執(zhí)行,編譯過(guò)程中可以不僅可以加密還能優(yōu)化代碼的運(yùn)行,使代碼運(yùn)行得更快。
MySQL數(shù)據(jù)庫(kù)。MySQL數(shù)據(jù)庫(kù)是關(guān)系型數(shù)據(jù)庫(kù),目前在網(wǎng)站開(kāi)發(fā)應(yīng)用中的使用也是比較廣泛的。MySQL數(shù)據(jù)庫(kù)雖然也是將所有數(shù)據(jù)進(jìn)行整合放在一起,但是也是有規(guī)律的整合,將有關(guān)聯(lián)的數(shù)據(jù)保存在一個(gè)表,分表保存,這樣不僅提高了靈活性還增加了速度。MySQL軟件擁有社區(qū)版和商業(yè)版兩個(gè)版本,兩個(gè)版本都具有許多優(yōu)點(diǎn),比如開(kāi)放性、體積小、速度快、總成本低等,相對(duì)大型網(wǎng)站的開(kāi)發(fā)的數(shù)據(jù)庫(kù),MySQL更適合作為中小型網(wǎng)站開(kāi)發(fā)工具。
環(huán)境搭建注意事項(xiàng)。開(kāi)發(fā)者要在對(duì)PHP語(yǔ)言開(kāi)發(fā)環(huán)境了解的情況下進(jìn)行網(wǎng)站開(kāi)發(fā),開(kāi)發(fā)環(huán)境的搭配不要自己決定,避免因不同軟件的不同版本之間的兼容性或者支持性不一,也就是版本沖突,從而引起配置上的一些復(fù)雜的難以解決的問(wèn)題。所以,在網(wǎng)站正式建設(shè)之前,需要注意的事項(xiàng)有:第一,網(wǎng)站進(jìn)行開(kāi)發(fā)之前,對(duì)要使用什么軟件以及哪種版本,以及這種版本是否與服務(wù)器所支持的版本能夠達(dá)到一致,進(jìn)行再三的確定和檢查,如果在網(wǎng)站開(kāi)發(fā)之前沒(méi)有對(duì)所使用的軟件、版本以及服務(wù)器是否支持進(jìn)行確定,那么將會(huì)給接下來(lái)網(wǎng)站的開(kāi)發(fā)開(kāi)發(fā)帶來(lái)很多不必要的問(wèn)題,甚至?xí)婕鞍踩阅艿膯?wèn)題。第二,由于MySQL具有免費(fèi)、小巧、開(kāi)源、高效率等特點(diǎn),使得MySQL數(shù)據(jù)庫(kù)在IT行業(yè)很受歡迎,使用很簡(jiǎn)便。對(duì)于一系列相關(guān)的程序都具有支持性,如訪問(wèn)的權(quán)限、訪問(wèn)的建立、訪問(wèn)的刪除等,同時(shí)對(duì)多線程運(yùn)行方式和多種平臺(tái)也提供一定的支持性。
以PHP+MySQL為基礎(chǔ)的網(wǎng)站開(kāi)發(fā)模型建立
需求分析。網(wǎng)站開(kāi)發(fā)是因?yàn)橛心撤N需求,而這種需求一般都是源于某客戶對(duì)于自身的發(fā)展前景進(jìn)行考慮的結(jié)果,也就是說(shuō)各種各樣需求促成了網(wǎng)站項(xiàng)目的建設(shè),不同的群體對(duì)于現(xiàn)在的發(fā)展所提出新的想法,都是基于自身發(fā)展的實(shí)際需求而提出來(lái)的,其中占有絕大比重的都是客戶的自身實(shí)際需求。不同客戶的知識(shí)層次都是不同的,自然他們對(duì)網(wǎng)站開(kāi)發(fā)的要求也不盡相同,網(wǎng)站開(kāi)發(fā)項(xiàng)目負(fù)責(zé)人理解客戶所提出來(lái)的需求的程度對(duì)于網(wǎng)站開(kāi)發(fā)項(xiàng)目的進(jìn)行成功與否起著至關(guān)重要的作用,所以說(shuō)網(wǎng)站開(kāi)發(fā)的項(xiàng)目負(fù)責(zé)人有必要對(duì)客戶的需求進(jìn)行深入的挖掘和了解。網(wǎng)站開(kāi)發(fā)負(fù)責(zé)人除了要對(duì)客戶所提出的需求要進(jìn)行分析,同時(shí)還應(yīng)該對(duì)網(wǎng)站開(kāi)發(fā)所需要的軟件或者數(shù)據(jù)等進(jìn)行掌握,除此之外,項(xiàng)目接收方的主要負(fù)責(zé)人要對(duì)網(wǎng)站開(kāi)發(fā)所進(jìn)行的需求分析進(jìn)行確認(rèn),最終確定方案,為了方便與客戶商討網(wǎng)站開(kāi)發(fā)的其他要求,要將客戶的需求分析進(jìn)行記錄整理,最終確定以后,要將對(duì)網(wǎng)站開(kāi)發(fā)需求的可能性進(jìn)行說(shuō)明以及其中的利弊。。
功能設(shè)計(jì)。在對(duì)客戶的需求進(jìn)行分析后做出需求報(bào)告,與客戶進(jìn)行二次討論,將所有細(xì)節(jié)與客戶所有的需求都盡可能的體現(xiàn)出來(lái),達(dá)到客戶想要的效果。網(wǎng)站開(kāi)發(fā)的工作人員再根據(jù)自己所掌握的相關(guān)知識(shí)以及豐富的開(kāi)發(fā)經(jīng)驗(yàn),對(duì)需求功能進(jìn)行模塊化設(shè)計(jì)處理,其中包括網(wǎng)站模塊的開(kāi)發(fā)、網(wǎng)站帶寬的設(shè)計(jì)、網(wǎng)站開(kāi)發(fā)的流程、網(wǎng)站建成后最大的同時(shí)訪問(wèn)量等等。
數(shù)據(jù)庫(kù)是網(wǎng)站開(kāi)發(fā)的根本,而數(shù)據(jù)庫(kù)的設(shè)計(jì)一般包括需求設(shè)計(jì)、系統(tǒng)的實(shí)施和運(yùn)行維護(hù)等多個(gè)階段。整個(gè)網(wǎng)站的核心就是數(shù)據(jù)庫(kù),那么數(shù)據(jù)庫(kù)中數(shù)據(jù)的安全性也是至關(guān)重要的,所以數(shù)據(jù)庫(kù)的設(shè)計(jì)和實(shí)施的每一個(gè)環(huán)節(jié)都應(yīng)該引起特別注意。如果數(shù)據(jù)庫(kù)中的數(shù)據(jù)遭到破壞、丟失甚至被非法復(fù)制都會(huì)帶來(lái)很多不必要的問(wèn)題還有麻煩,比如會(huì)給客戶或者瀏覽者帶來(lái)不可估計(jì)的損失,更嚴(yán)重的就是會(huì)侵犯到他人合法權(quán)益。因此,以PHP+MySQL為基礎(chǔ)進(jìn)行網(wǎng)站開(kāi)發(fā),就充分利用了MySQL數(shù)據(jù)庫(kù)的優(yōu)點(diǎn):安全性和權(quán)限性,數(shù)據(jù)庫(kù)中的每一個(gè)賬戶都包括了用戶名、位置(即IP、服務(wù)器名或者通配符)、密碼。MySQL數(shù)據(jù)庫(kù)進(jìn)行安全檢查的時(shí)候主要采用三種類型:登錄驗(yàn)收、訪問(wèn)控制、授權(quán)。
以PHP+MySQL為基礎(chǔ)的網(wǎng)站開(kāi)發(fā)程序?qū)嵗?/p>
以下操作的說(shuō)明均以“飯卡智能管理系統(tǒng)”為例進(jìn)行。
數(shù)據(jù)庫(kù)與數(shù)據(jù)表的創(chuàng)建。在這里,利用SOL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)和數(shù)據(jù)表進(jìn)行創(chuàng)建。數(shù)據(jù)庫(kù)名稱為Ecard,用戶信息表名稱為:Info_user。
在MySQL中創(chuàng)建數(shù)據(jù)庫(kù)用CREATEDATABASE(Ecard):語(yǔ)句來(lái)實(shí)現(xiàn)。為了防止在后來(lái)的數(shù)據(jù)庫(kù)操作中因?yàn)榫幋a問(wèn)題而出現(xiàn)亂碼情況,此時(shí),可以用手動(dòng)方法對(duì)數(shù)據(jù)庫(kù)進(jìn)行建立。數(shù)據(jù)庫(kù)創(chuàng)建好之后就是數(shù)據(jù)表的創(chuàng)建了,在MySQL中數(shù)據(jù)表的創(chuàng)建語(yǔ)句是:
數(shù)據(jù)庫(kù)連接成功,就可以由管理者進(jìn)入系統(tǒng)進(jìn)行相關(guān)數(shù)據(jù)的填寫(xiě),最后顯示在網(wǎng)頁(yè)上面。
網(wǎng)站開(kāi)發(fā)上將PHP語(yǔ)言所獨(dú)有的優(yōu)點(diǎn)比如可移植性以及運(yùn)行高效性,與MySQL高效、靈活、安全、穩(wěn)定的優(yōu)點(diǎn)進(jìn)行完美的結(jié)合,受到越來(lái)越多開(kāi)發(fā)者的青睞。以PHP+MySQL為基礎(chǔ)進(jìn)行網(wǎng)站開(kāi)發(fā),因?yàn)榫哂泄δ軓?qiáng)大、語(yǔ)法簡(jiǎn)潔、易于掌握等優(yōu)點(diǎn)而成為眾多IT公司以及開(kāi)發(fā)者進(jìn)行網(wǎng)站開(kāi)發(fā)的首要選擇。相信在時(shí)代進(jìn)步的今天PHP+MySQL技術(shù)定會(huì)在網(wǎng)站開(kāi)發(fā)中起到更大的作用,帶給人們更多的便捷。