亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

php語言

php什么是PEAR

時間:2024-06-19 03:02:18 php語言 我要投稿
  • 相關推薦

php什么是PEAR

  PHP愛好者必喜歡PEAR,我們的目的就是希望將PEAR介紹給PHP的程式開發(fā)人員,我個人認為引用程式庫的程式開發(fā)方式已經漸漸成為趨勢了,除了php、JSP外,像perl、C++也都有專屬的程式庫供其開發(fā)人員引用。就跟隨百分網小編一起去了解下吧,想了解更多相關信息請持續(xù)關注我們應屆畢業(yè)生考試網!

  借著引入PEAR,php的程式開發(fā)者除了可以大幅縮減撰寫程式碼的工作與時間外,還可以用很簡單的方式得到許多強大的動態(tài)網頁功能,我將會列舉許多的實例,讓大家看了后,一定會啪掌叫好,並深深的迷上了PEAR。此外,程式碼很容易維護,安全性高也是PEAR另2個很吸引人的優(yōu)點,PAER程式庫宛如模組,可以輕易的抽換與更新,完全不會影響到其他的程式碼。

  我們是從最基本的觀念介紹起,包括PEAR這個專有名詞的含意? 在那地方取得PEAR套件(package)? 如何使用PEAR套件等?

  從第2章起,我們首先介紹PEAR的起源、歷史與特色,讓大家對PEAR有個基本的認識。

  第3章我們將會介紹PEAR程式庫套件的安裝與管理方法,這一章是非常重要的,在使用PEAR之前,必需先把這些基本功夫學好,雖然有點復雜,但是學會之后受用無窮,讓您的PHP程式開發(fā)效率倍增,功能隨著遞升。

  第4章,是由簡單的范例介紹如何引用PEAR程式庫來開發(fā)PHP程序,讓我們了解PEAR的一般使用方法,也為程式庫的使用建立一個基本的操作流程。

  在第五章我們將介紹幾個用法簡單又功能強大的程式庫套件的范例,讓大家可以在動態(tài)網頁上快速建立一些您以前無法想像而又非?岬墓δ埽屇某淌介_發(fā)功力立刻提高。例如:

  ◆ 讓網頁可以提供天氣預報的功能,增加網頁的附加價值。

  ◆ 用很簡單的方法在服務器上建立網頁的快取(Cache),加快網頁的開啟速度。

  ◆ 在動態(tài)網頁上搜尋某臺主機有提供那些PORT號的服務。

  ◆ 在動態(tài)網頁上查詢某個網域名稱(DNS),找出相對應的IP。

  ◆ 動態(tài)產生HTML表格。

  ◆ 快速建立「客戶回函」系統(tǒng),讓網頁瀏覽者可以從網頁上寄信給網站管理員。

  ◆ 讓網頁可以記錄網頁瀏覽者的行為,也就是做Log。

  第6章到第13章,我們會很詳細地介紹一些很重要,很常用,但較為復雜的程式庫套件的使用方法,這幾章都是以套件為介紹的主軸,也就是說,一章只介紹一個套件,務求將這幾個重要套件中較為重要功能,詳細地介紹給大家。

  這些套件(packages)包括:資料庫連線套件、表單制作套件、身份認證套件、檔案上傳套件、分頁套件等等。

  最后,附錄A會對PEAR的網站做詳細的介紹,當您進入PEAR的世界后,您一定會經常來這個網站尋找資料。知道如何利用網站,對于那些PEAR的PHP開發(fā)者而言,是十分重要的。附錄B則會對PHP的物件導向程式設計做簡單的介紹。

  喜歡和適合使用PEAR者分類如下:

  ◆ php愛好者,那一定要用PEAR,因為它絕對棒極了。

  ◆ PHP的專業(yè)程式設計員。您需要的是程式碼的安全性,可重復性,以及良好的工作效率,PEAR絕對是必備的。

  ◆ PHP的程式玩家,想要開發(fā)更有趣的,功能更強的應用程式,卻不想被撰寫PHP程式的一些煩惱綁纏,PEAR絕對可以滿足您的要求。

  ◆ 自己撰寫PHP程式,卻不喜歡每次都要從零開始,一字一字地敲打程式碼,PEAR可以提高您的工作效率。

  ◆ 您想要學習功能性強,安全性高的PHP,當學會了PHP的基本語法后,可以試著使用PEAR。

  ◆ 您需要量身定造的PHP應用程式,換言之,您不喜歡像XOOPS之類的套裝應用程式,來試試PEAR吧。

  ◆ 您需要容易維護的PHP應用程式,不想日后常修改程式碼,或因為PHP的改版而將整個程式重新設計。

  ◆ 您希望您的PHP程式可以物件導向化,方便程式的抽換與模組化。

  ◆ 您希望您的PHP功力更上一層樓,想要學習更多的PHP相關知識,透過PEAR的使用或觀看PEAR的原始碼,不失為一個好的學習途徑。

  PEAR就是專門為有以上這些需求的人所寫的。

  使用PEAR就像建一座房子一樣。它是讓您用預制件的方式,建一棟自己設計兼施工的大房子,但卻不需要自己攪拌水泥,自己準備沙土、石頭,自己燒磁磚.自己做鋁門窗,自己做木工裝飾等等...。

  PEAR就像是已經針對您的需求所訂制好並準備好的預制件,您只需要運用創(chuàng)意將他們組合起來就可以了。

  我門在使用PEAR來編寫PHP程式時,必需有一個先決條件,就是必需對PHP的相關知識有一定的認識。

  若您不知道甚麼是PHP,什麼是Apache、Mysql,或者您雖然知道,卻還不會PHP的基本語法,那麼,本文章目前並不適合您。建議您快去買些PHP、Apach、Mysql的入門書籍,詳加研讀后,才來看本文章。

  大家並不一定要是PHP高手,但一定需要具備看懂基本PHP程序碼的能力。無論如何,首先對PHP的熱愛才是閱讀本書最基本的先決條件。

  第二章

  PHP有許多的規(guī)范與語法,我們不做介紹,請大家有空去閱讀有關PHP的書籍,我們重點介紹的是PHP發(fā)展到4.0版以后。加入了物件導向(Object-Oriented Programming Language)的功能,雖然還無法像了Java一樣做到完全的物件導向,但比起前版本PHP3.0已經是一大進步,也對PHP的程序開發(fā)者提供了更強大與更方便的開發(fā)能力。

  PHP 5.0版以上的版本,已經轉變成為徹底的物件導向化,提供了更多完全物件導向功能。我們所介紹的PEAR程式庫對PHP 4.3.0以上的版本是完全的支援。這一點請大家放心。

  為了大多數人著想,也考慮到PHP向下的相容性,本書的內容與范例都可以在PHP 4.3.0版以上的環(huán)境中執(zhí)行,因為PEAR完全支援PHP 4.3.0以上的版本,小于PHP 4.3.0版的環(huán)境,PEAR大部分也是支援的,只有小部分不支援。

  什么是PHP的物件導向? 物件導向的語法在傳統(tǒng)的PHP程式中較少看到,但若您了解JAVA這種程式語言的話,您應該可以知道什麼足物件導向,我會在附錄B有針對物件導向做簡單的說明。

  另外,我要強調的是:PHP除了基本語法外,內建的函式就有超過上千個,橫跨上百種類別,包括文字類函式、數字類函式、資料庫類、圖形類等等,功能相當強大,令人吒舌。但相對於程式開發(fā)者,如何善用這些函式,配合PHP的語法撰寫有效又好管理的程式碼,將會是一大挑戰(zhàn)。

  在今天,有PEAR這個由全世界眾多頂尖的PHP高手所共同生產的智慧結晶,可以讓我們輕松又有效率地撰寫程式碼,並克服許多撰寫上的困難。以武俠界的例子來說,用PEAR撰寫PHP就宛如數百位武林高手灌注他們的功力給程式開發(fā)者。讓程式開發(fā)者不用從最基本的練功,紮馬步練起,借用他們的功力就可以很輕松的讓功力倍增,效率倍增。

  說了半天,到底什麼是PEAR?下一個單元筆者就來做個介紹。

  PEAR這個字單純就字面上而言意思是「梨子」。

  一顆梨子。網站的網址為http://pear.php.net

  PEAR網站的logo中可以看到例子。

  PEAR的開始是從1999年11月2l日。有一位名叫Stig S.Bakken的先生,這位仁兄發(fā)起了一個專案,並號召許多的PHP高手來共同投入,他首先為這個專案建立了一些程式碼的基礎規(guī)則,希望PHP的開發(fā)者加入這個專案時所撰寫的PHP程式碼都需要遵守這些規(guī)則。

  這個專案名稱就是PEAR,其實是PHP Extension and Application Repository的縮寫,意即「PHP的延續(xù)與應用程式庫」,簡單的說,PEAR其實是一個PHP的程式庫。

  Bakken先生建立的程式碼基礎如下,我只概略說明一下,並不詳談細節(jié)的部分:

  ◆ 如果開發(fā)者要提供PHP程式庫,程式的結構必須物件化。

  ◆ 程式的縮排要遵循一定的格式

  ◆ 程式中類別的命名也要遵循一定的格式

  ◆ 程式碼的註解要有一定的格式

  ◆ 檔案命名要有一定的格式

  ◆ 程式庫撰寫完成后要包裝成套件,而套件的包裝與安裝方式,也有一定的格式。

  該專案歡迎所有的PHP開發(fā)者來共同開發(fā)PHP程式庫,只要他們愿意遵守上述的程式碼基礎規(guī)則。Bakken先生並組織了一組團隊作為這個專案的控制主體,負責審核所有參與專案的開發(fā)者所提供的程式庫,若通過審核,就將程式庫分類並放入網站中供其他開發(fā)者下載使用,另外,這個團體也負責維護網站的維護與更新。

  有些人可能會很好奇,為什麼有人會愿意免費撰寫程式庫讓別人來使用呀? 這就是開放原碼世界的精神一互助、共享。試想,若每個開發(fā)者針對自己專精的部分開發(fā)程式庫給其他人使用,同時也享用別的開發(fā)者所釋出的程式庫,是不是可以達到互助的目的,讓每一個開發(fā)者共享所有的開發(fā)者的成果.不必所有的程式碼都要自己撰寫。

  更棒的是,這些程式庫是免費開放給全世界的人使用的,不只參與程式庫開發(fā)的開發(fā)者可以享用(這種作法與Java或perl提供函式庫的作法是一樣的)。

  因此,全世界所有的PHP開發(fā)者可以省去許多撰寫程式碼的時間,又因為使用程式庫的開發(fā)者可以回報程式庫的缺失給原開發(fā)者,原開發(fā)者也因此會不斷的修正這些程式庫,所以程式碼相對安全。另外,程式庫開發(fā)者也會隨著時代演進,加入新的功能到程式庫中,讓程式庫的使用者可以與時俱進。

  詳細情況可參閱PEAR的網站中所提到關於開發(fā)PEAR的目的說明:http://pear.php.net/manual/en/about-pear.php。我建議您有時間慢慢地看吧,繼續(xù)將本文章看下去,您就會慢慢了解PEAR的神奇之處了。

  我在文章的最后有一章附錄:PEAR網站的介紹,大家可以先參考一下。

  如果您還不太了解我介紹所謂「程式庫」的意思,沒關系,下一節(jié)就會透過實際的例子加以說明。

  2-3 所有套件簡介

  ▓ 程式庫VS套件

  介紹所有套件之前,我們必須釐清兩個名詞,以免讀者混淆了,一個就是「程式庫」,另外一個就是「套件」。

  假如我是是一個PHP的開發(fā)者,發(fā)展了一個可以處理所有資料庫存取「程式庫」,並想將這個程式庫加入PEAR分享給全世界使用。當我撰寫完理資料庫的程式庫后,我必須按照PEAR的規(guī)定,將程式庫壓縮成一個「件」檔,放在PEAR網站供所有人下載,也由於遵循PEAR的規(guī)定來壓縮檔案,這個套件就可以用PEAR的套件管理指令來安裝或管理,這對PEAR使用者而言是相當便利的,關於套件管理指令,我會在下一章做完整的說明經過上述的說明,相信讀者應該了解何謂「程式庫」、何謂「套件」?其實,簡單的說,把程式庫包裝好就變成了套件。

  ▓ 套件與分類

  PEAR截至目前為止釋出的套件已高達三百多個,共分為35大類,而且不斷增加中。大家可以想像全世界的頂尖PHP開發(fā)者的結合,是一股多大的團結力量。下圖是網站中套件的分類:

  PEAR因為釋出的套件太多了,為了管理上的方便所以依套件的功能將套件做分類,同一類的套件在效果上都有相關性,但提供的功能卻不盡相同小接下來,我將所有的分類用表格的方式做一個簡單的介紹,讓大家多了解一下PEAR套件可以提供哪些功能。

  這麼多的分類,每一類都會依功能的不同發(fā)展出不同的套件。以第一個認證類為例,若您到網站去看,會發(fā)現目前該類中共有8個套件

  這8個套件都是與身份認證有相關的套件,如果您想要網頁具有身份認證功能,例如,可以讓網頁瀏覽者註冊、輸入帳號密碼、判別身份、給予權限等等。就會需要用到這些套件。

  我再補充一點:有些套件已發(fā)展成熟,開發(fā)者會將它稱為穩(wěn)定(stable)版,但若程式庫尚在發(fā)展中,但也已經可以使用,開發(fā)者將它釋出,通常會稱為測試版(alpha or beta)版。網站也會記錄套件的開發(fā)者與維護者的姓名,有時候一個套件是由許多人共同開發(fā)而成的。

  這些套件的訊息都可在PEAR的網站中找到,我在附錄〈PEAR網站的介紹〉會介紹如何使用PEAR網站。

  2-4 使用PEAR程式庫的簡單范例

  在這一節(jié)中,我用l個簡單的范例來說明程式庫的使用。

  假設您想要制作一個網頁,並且希望知道網頁執(zhí)行時所耗用的時間,則可以借用PEAR所釋出的名為Benchmark的程式庫。這個程式庫開發(fā)出來的目的就是用來計算網頁的執(zhí)行時間。

  首先,先將Benchmark程式庫套件安裝好(安裝方法請參考下一章)。接著我們就可以開始撰寫網頁了,例如:我們建立了一個名為show.php的網頁。

  基於說明上的方便,我在每一行程式前面加上行號,大家實際上撰寫程式時是不用加上行號的。

  第1行與第2行的程式碼首先引用Benchmark套件中的Timer.php網頁,這個網頁內含計算綱頁執(zhí)行時間的程式庫。include_once可以將某一個外部的網頁放到這個綱頁來,我稱這個動作叫做「引用」, 本例相當於執(zhí)行了Timer.php與show.php兩個網頁。

  第3行,用new關鍵字建立一個Benchmark_Timer物件,並將該物件放入名為$timer的變數中。接著使用細$timer物件的start( )方法啟動時鐘,然后加上我自己的程式碼,此例中是一行簡單的程式。

  接著就是要結束時鐘的計時,計算網頁執(zhí)行所花費的時間並將它顯示出來。第8行先用$timer物件的stop( )方法來停止時鐘,並用第9行$timer物件的timeElapsed( )方法計算時鐘從啟動到停止中間的時間差,並將計算結果放入$totaltime變數中。

  最后用echo函式顯示時間差在網頁上。

  由結果可清楚看到show.php網頁從開始執(zhí)行到執(zhí)行完畢總共花了0.00013613700866699秒,以后可以借由觀察這個數字來判斷系統(tǒng)效能,或做為程式碼改進的參考。如何,執(zhí)行時間的計算是不是方便、快速又神奇呢!

  如果您需要在其他網頁上也可以有計算網頁的執(zhí)行時間的功能,只要用上述方式套用在其他PHP網頁上就可以了。

  事實上,其他套件的使用方式也跟這個套件的使用方式大同小異.差別只是在每個套件所提供的類別、方法以及使用的參數各有不同而已。

  套件雖然好用,但相信讀者還是有許多的疑惑? 例如:

  1. Benchmark程式庫套件是怎麼來的?要有哪些前置工作才可以使用它?

  2. 我是如何知道使用Benchmark套件的方法?

  第1個問題牽涉到如何安裝PEAR套件,以及安裝后套件的管理、升級、刪除等問題,我會在第3章加以介紹。第2個問題,筆者會在第4章針對如何使用套件、如何得到套件的資訊等做一個詳細的說明。

  2-5 為何要用PEAR

  為何要使用PEAR? 我根據自己的心得,歸納出以下幾點:

  1. 省時省力:許多程式碼都被撰寫在程式庫中,開發(fā)者只需引用含程式庫的PHP檔,就可以擁有程式庫所提供的功能,省去自行撰寫的時間與精力。

  2. 安全:由於這些程式庫套件都將原始碼公開,使用者若發(fā)現bug,可以立即向套件的開發(fā)者反映,開發(fā)者通常也會立即加以修正,讓程式庫的錯誤減到最小。

  3. 容易維護:自行撰寫的程式碼與PEAR程式庫的程式碼分開,若PEAR套件因為有新功能被開發(fā)或修正錯誤而釋出新版本,只需更新套件即可,完全不會動到自行撰寫的程式碼。

  4. 功能強大:PEAR套件所提供的功能非常之多,除了一般常用功能如:資料庫的連結、設定檔的處理、身份的認證、以及表單的處理。另外,較為進階的功能,例如像網路郵局、網路管理、動態(tài)方式產生圖形、RSS、Wiki,或者像phpBB的BBCode解析等等都可簡單做到。

  5. 讓網頁的程式開發(fā)與版面設計分開:PEAR提供許多樣板的程式庫,可讓程式開發(fā)與版面設計分開,方便於程式開發(fā)者與網頁設計者分工合作。

  6. 對學習PHP者是一套絕佳的學習范例:程式庫的註解說明十分詳細,程式碼的撰寫,具有一定的規(guī)則與格式,而且完全物質化,讓開發(fā)者容易看懂並學習。有些套件還內附教學文件與范例擋,最重要的是:你不用花半毛錢就可得到,我們應該感謝套件的作者們,他們?yōu)槲覀兏冻隽藷o私的貢獻。

  2-6 為什么要建立PEAR社團

  是什麼原因促使全世界的PHP開發(fā)者大團結,共同開發(fā)出PEAR這個程式寶庫呢? 我就認為有以下幾個原因:

  1.遭受其他競爭者的強大競爭:這一點第1章已經說明過了。

  2.PHP的物質化:從PHP4加入物質導向的功能后,PHP5更是進一步物質化。除了要與ASP.NET、JSP一拼外,就是方便於程式的模組化,讓程式庫的開發(fā)可以進行,有了物質化的功能,程式庫才可以與開發(fā)者自行撰寫的程式碼切割。

  3.開發(fā)者的共同需求:如果每一次開發(fā)PHP程式,都要從無到有完全自己來,雖然可以鍛鍊程式功力,但卻沒有效率,也不甚經濟。若一些常用的功能可以用程式庫的方式來處理,將可以解決許多開發(fā)者的困難;哆@種所有開發(fā)者都共同擁有的需求,讓這些PHP的開發(fā)者分工合作,共同發(fā)展程式庫,幫助自己也幫助別人。

  2-7 PHP的競爭者與優(yōu)缺點

  PHP是在1994年發(fā)展出來的,經過四次主要的改寫,成為我們今天所看到的可以廣泛應用且成熟的產品。到2005年四月為止,PHP已經運用於全球超過1900萬個網站上,而且這個數字還在持續(xù)快速成長中。

  PHP與他們的競爭對手相比,他具有以下優(yōu)勢:

  高效能:不是我黃婆賣瓜,哈哈。.., 我閱覽過許多Asp.NET與Jsp的網頁,效能上實在無法與PHP相比。(Asp.NET與Jsp的使用者應該不會看這篇文章吧)。

  ● 可以與許多不同的資料庫系統(tǒng)相連結:其他的競爭者也可以,但沒有PHP快。

  ● 易學易用:PHP的程式碼的寫法非常直覺,容易學習。

  ● 支援物件導向:這方面Jsp是強項,但PHP5已經追上來了。

  ● 低成本:根本不用錢。

  ● 內建非常多的函式庫:記得筆者以前使用Asp,內建的函式庫實在少的可憐。

  ● 開放原始碼:安全性會比沒有開放的高。

  ● PEAR程式庫:這是最近的強力武器,用來與強敵們一爭長短。

  ● 可攜性:無論是各類Unix作業(yè)系統(tǒng),如:Linux,FreeBSD,商業(yè)版Unix或Windows作業(yè)系統(tǒng)都可以使用PHP。

  Asp.NET與Jsp當然也有他們獨特的優(yōu)點? 例如,Jsp夾帶JAVA強大的功能,它就可以呈現一些目前PHP無法做到的效果。所以Jsp也吸引了許多的使用者,但筆者對Jsp目前的效能實在還不甚滿意,相反地,對PHP的快速度滿意的不得了。

  使用哪一種程式,就由您自行做明確的抉擇,不過,若您選擇觀看文章,相信我們應該都是同道中人,PHP的愛好者。

  總而言之,許多PHP高手共同構筑了一個強大的支援網,若您是PHP的程式開發(fā)者,卻對這些高手的好意毫不領情,那不是太可惜了嗎?

【php什么是PEAR】相關文章:

什么是php語言03-17

PHP是做什么的 如何學習PHP03-02

php是什么文件03-30

php語言是什么05-21

php語言的優(yōu)勢是什么04-17

PHP語言可以做什么12-01

PHP中的trait是什么12-07

php發(fā)展和php應用為什么比asp強03-02

PHP中MySql操作是什么11-17