『壹』 php是什麼
PHP 是一種易於學習和使用的伺服器端腳本語言。只需要很少的編程知識你就能使用PHP 建立一個真正交互的WEB 站點。本教程並不想讓你完全了解這種語言,只是能使你盡快加入開發動態web站點的行列。我假定你有一些HTML(或者HTML編輯器)的基本知識和一些編程思想。
簡介
PHP 是能讓你生成動態網頁的工具之一。PHP 代表:超文本預處理器(PHP:Hypertext Preprocessor)。PHP 是完全免費的,不用花錢,你可以從PHP 官方站點(http://www.php.net) 自由下載。PHP 遵守GNU 公共許可(GPL),在這一許可下誕生了許多流行的軟體諸如Linux和Emacs。你可以不受限制的獲得源碼,甚至可以從中加進你自己需要的特色。 PHP 在大多數Unix 平台,GUN/Linux和微軟Windows平台上均可以運行。怎樣在Windows環境的PC 機器或Unix機器上安裝PHP 的資料可以在PHP 官方站點上找到,也可以查閱網頁陶吧的「PHP 安裝全攻備」專題文章。安裝過程很簡單。
如果你的機器解決了2000問題,那麼PHP 也一樣沒有千年蟲問題!
歷史
三年前,Rasmus Lerdorf為了創建他的在線簡歷而創造了"個人主頁工具"(Personal Home Page Tools)。這是一種非常簡單的語言。其後越來越多的人們注意到了這種語言並對其擴展提出了各種建議。在許多人的無私奉獻下以及這種語言本身的源代碼自由性質,它演變成為一種特點豐富的語言,而且現在還在成長中。
PHP 雖然很容易學習,但是速度上比mod_perl(植入web伺服器的perl模塊)慢。現在有了可以與mod_perl 速度想媲美的被稱作Zend 的新引擎,而PHP4 就可以充分利用這個引擎。現在,PHP4 正式版已經發布,大家可以到php 的官方站點上去下載。Andy Gutmans 和Zeev Suraki 是Zend 的主要作者。可以去Zend 站點(http://www.zend.com)了解更多。
PHP 的應用在個人性質的web工程中增長顯著。根據Netcraft在1999 年10月的報告,有931122個域和321128 個IP 地址利用PHP 技術。
PHP 的先進之處
應用PHP 有許多好處。當然已知的不利之處在於PHP 由於是開放源碼項目,沒有什麼商業支持,並且由此而帶來的執行速度緩慢(直到PHP4 之前)。但是PHP 的郵件列表很是有用而且除非你正在運行像Yahoo!或者Amazon.com 這樣的極受歡迎的站點,你不會感覺出PHP 的速度與其他的有什麼不同。最起碼我就沒有感覺出來!好了,讓我們來看看PHP 有那些優點:
學習過程
我個人更喜歡PHP 的非常簡單的學習過程。與java和Perl 不同,你不必把頭埋進100 多頁的文檔中努力學習才可以寫出一個象樣的程序。只要了解一些基本的語法和語言特色,你就可以開始你的PHP 編碼之旅了。之後你在編碼過程中如果遇到了什麼麻煩,還可以再去翻閱相關文檔。
PHP 的語法類似於C,Perl,ASP 或者JSP。對於那些對上述之一的語言較熟悉的人來說,PHP 太簡單了。相反的,如果你對PHP 了解較多,那麼你對於其他幾種語言的學習都很簡單了。
你只需要30分鍾就可以將PHP 的核心語言特點全部掌握,你可能已經非常了解HTML,甚至你已經知道怎樣用編輯設計軟體或者手工來製作好看的WEB 站點。由於PHP 代碼能夠無障礙的添加進你的站點,在你設計和維護站點的同時,你可以很輕松的加入PHP 使得你的站點更加具有動態特性。
資料庫連接
PHP 可以編譯成具有與許多資料庫相連接的函數。PHP 與MySQL是現在絕佳的組合。你還可以自己編寫外圍的函數取間接存取資料庫。通過這樣的途徑當你更換使用的資料庫時,可以輕松的更改編碼以適應這樣的變化。PHPLIB就是最常用的可以提供一般事務需要的一系列基庫。
可擴展性
就像前面說的那樣,PHP 已經進入了一個高速發展的時期。對於一個非程序員來說為PHP 擴展附加功能可能會比較難,但是對於一個PHP 程序員來說並不困難。
面向對象編程
PHP 提供了類和對象。基於web的編程工作非常需要面向對象編程能力。PHP支持構造器、提取類等。
可伸縮性
傳統上網頁的交互作用是通過CGI來實現的。CGI程序的伸縮性不很理想,因為它為每一個正在運行的CGI程序開一個獨立進程。解決方法就是將經常用來編寫CGI程序的語言的解釋器編譯進你的web伺服器(比如mod_perl,JSP)。PHP 就可以以這種方式安裝,雖然很少有人願意這樣以CGI方式安裝它。內嵌的PHP 可以具有更高的可伸縮性。
更多特點
PHP 的開發者們為了更適合web編程,開發了許多外圍的流行基庫,這些庫包含了更易用的層。你可以利用PHP 連接包括Oracle,MS-Access,Mysql在內的大部分資料庫。你可以在蒼蠅上畫圖,編寫程序下載或者顯示e-mail。你甚至可以完成網路相關的功能。最好的是,你可以選擇你的PHP 安裝版本需要哪些功能。引用Nissan 的Xterra 的話來說就是PHP 可以做到你想讓它做到的一切而且無所不能!
『貳』 php是什麼公司的產品
http://www.php.net
PHP 是 PHP: Hypertext Preprocessor (超文本預處理器) 的縮寫,它是一種伺服器端的 HTML 腳本編程語言,是一種簡單的、面向對象的、解釋型的、健壯的、安全的、性能非常之高的、獨立於架構的、可移植的、動態的腳本語言。
PHP是一種易於學習和使用的伺服器端腳本語言。只需要很少的編程知識你就能使用PHP建立一個真正交互的WEB站點。本教程並不想讓你完全了解這種語言,只是能使你盡快加入開發動態web站點的行列。我假定你有一些HTML(或者HTML編糭器)的基本知識和一些編程思想。
1.簡介
PHP是能讓你生成動態網頁的工具之一。PHP網頁文件被當作一般HTML網頁文件來處理並且在編糭時你可以用編糭HTML的常規方法編寫PHP。
PHP代表:超文本預處理器(PHP: Hypertext Preprocessor)。PHP是完全免費的,不用花錢,你可以從PHP官方站點(http://www.php.net)自由下載。PHP遵守GNU公共許可(GPL),在這一許可下誕生了許多流行的軟體諸如Linux和Emacs。你可以不受限制的獲得源碼,甚至可以從中加進你自己需要的特色。PHP在大多數Unix平台,GUN/Linux和微軟Windows平台上均可以運行。怎樣在Windows環境的PC機器或Unix機器上安裝PHP的資料可以在PHP官方站點上找到。安裝過程很簡單。
如果你的機器解決了2000問題,那麼PHP也一樣沒有千年蟲問題!
1.1 歷史
三年前,Rasmus Lerdorf為了創建他的在線簡歷而創造了"個人主頁工具"(Personal Home Page Tools)。這是一種非常簡單的語言。其後越來越多的人們注意到了這種語言並對其擴展提出了各種建議。在許多人的無私奉獻下以及這種語言本身的源代碼自由性質,它演變成為一種特點豐富的語言,而且現在還在成長中。
PHP雖然很容易學習,但是速度上比mod_perl(植入web伺服器的perl模塊)慢。現在有了可以與mod_perl速度想媲美的被稱作Zend的新引擎,而PHP4就可以充分利用這個引擎。PHP4還處在BETA測試階段。Andy Gutmans和Zeev Suraki是Zend的主要作者。可以去Zend站點(http://www.zend.com)了解更多。
PHP的應用在個人性質的web工程中增長顯著。根據Netcraft在1999年10月的報告,有931122個域和321128個IP地址利用PHP技術。
1.2 PHP的先進之處
應用PHP有許多好處。當然已知的不利之處在於PHP由於是開放源碼項目,沒有什麼商業支持,並且由此而帶來的執行速度緩慢(直到PHP4之前)。但是PHP的郵件列表很是有用而且除非你正在運行像Yahoo!或者Amazon.com這樣的極受歡覎的站點,你不會感覺出PHP的速度與其他的有什麼不同。最起碼我就沒有感覺出來!好了,讓我們來看看PHP有那些優點:
- 學習過程
我個人更喜歡PHP的非常簡單的學習過程。與Java和Perl不同,你不必把頭埋進100多頁的文檔中努力學習才可以寫出一個象樣的程序。只要了解一些基本的語法和語言特色,你就可以開始你的PHP編碼之旅了。之後你在編碼過程中如果遇到了什麼麻煩,還可以再去穇閱相關文檔。
PHP的語法與C,Perl,ASP或者JSP。對於那些對上述之一的語言較熟悉的人來說,PHP太簡單了。相反的,如果你對PHP了解較多,那麼你對於其他幾種語言的學習都很簡單了。
你只需要30分鍾就可以將PHP的核心語言特點全部掌握,你可能已綺非常了解HTML,甚至你已綺知道怎樣用編糭設計軟體或者手工來製作好看的WEB站點。由於PHP代碼能夠無障癬的添加進你的站點,在你設計和維護站點的同時,你可以很輕松的加入PHP使得你的站點更加具有動態特性。
- 資料庫連接
PHP可以編譯成具有與許多資料庫相連接的函數。PHP與MySQL是現在絕佳的組合。你還可以自己編寫外圍的函數取間接存取資料庫。通過這樣的途徑當你更換使用的資料庫時,可以輕松的更改編碼以適應這樣的變化。PHPLIB就是最常用的可以提供一般事務需要的一系列基庫。
- 可擴展性
就像前面說的那樣,PHP已綺進入了一個高速發展的時期。對於一個非程序員來說為PHP擴展附加功能可能會比較難,但是對於一個PHP程序員來說並不困難。
- 面向對象編程
PHP提供了類和對象。基於web的編程工作非常需要面向對象編程能力。PHP支持構造器、提取類等。
- 可伸縮性
傳統上網頁的交互作用是通過CGI來實現的。CGI程序的伸縮性不很理想,因為它為每一個正在運行的CGI程序開一個獨立進程。解決方法就是將綺常用來編寫CGI程序的語言的解釋器編譯進你的web伺服器(比如mod_perl,JSP)。PHP就可以以這種方式安裝,雖然很少有人願意這樣以CGI方式安裝它。內嵌的PHP可以具有更高的可伸縮性。
- 更多特點
PHP的開發者們為了更適合web編程,開發了許多外圍的流行基庫,這些庫包含了更易用的層。你可以利用PHP連接包括Oracle,MS-Access,Mysql在內的大部分資料庫。你可以在蒼蠅上籣圖,編寫程序下載或者顯示e-mail。你甚至可以完成網路相關的功能。最好的是,你可以選擇你的PHP安裝版本需要哪些功能。引用Nissan的Xterra的話來說就是PHP可以做到你想讓它做到的一切而且無所不能!
1.3 競爭對手:ASP,mod_perl,JSP
我當然不清楚ASP/JSP能做些什麼。不過明確的是編寫那樣的代碼有多簡單,購買它們會有多昂貴以及它們需要多麼昂貴和強大的硬體。如果你有什麼中立的觀點(比如說沒有被SUN和Microsoft的百萬美金所影響),請順便通知我。
據我所知,JSP基於Java,因此Java程序員可以輕松開始編碼。ASP只是一個一般的引擎,具有支持多種語言的能力,不過默認的並且是最常用的還是VBScript。
mod_perl與Perl一樣強大,只是更快一些
『叄』 什麼是PHP
PHP 一個嵌套的縮寫名稱。是hypertext preprocessor(超級文本預處理語言)的縮寫。
php 是一種html 內嵌式的語言。php與微軟的asp頗有幾分相似。都是一種在伺服器端執行的嵌入html文檔的腳本語言。語言的風格類似c語言,現在被很多的網站編輯人員廣泛運用。
php 獨特的語言混合料C, JAVA,PER1 .以及PHP自創的新語法。它可以比cgi或者per1更快速度執行動態網頁,與其他的編程語言相比。php是將程序嵌入到html文檔中去執行,執行效率比完全生成的html標記的cgi要高許多。與同樣是嵌入html文檔的腳本語言javascript相比,php在伺服器端執行,充分利用了伺服器的性能。php執行引擎還會將用戶經常訪問的php程序駐留在內存中。其他用戶在一次訪問這個程序時不需要重新編譯程序,只要直接執行內存中的代碼就可以了,這也是PHP高效率的體現之一。PHP具有非常強大的功能,所有的CGI或者javascript的功能php都能實現。,而且支持幾乎所有流行的資料庫以及操作系統
『肆』 你好。。我正在學習PHP。。希望加團,以求幫助!!謝謝!!!
可以加團,請搜索「就愛PHP」
『伍』 PHP是什麼
PHP是PHP的遞歸首字母縮寫:Hypertext Preprocessor,一種用於創建動態和互動式HTML網頁的腳本語言。當網站訪問者打開頁面時,伺服器處理PHP命令,然後將結果發送到訪問者的瀏覽器。
主要特點
①開源性和免費性
由於PHP的解釋器的源代碼是公開的,所以安全系數較高的網站可以自己更改PHP的解釋程序。另外,PHP運行環境的使用也是免費的。
②快捷性
PHP是一種非常容易學習和使用的一門語言,它的語法特點類似於C語言,但又沒有C語言復雜的地址操作,而且又加入了面向對象的概念,再加上它具有簡潔的語法規則,使得它操作編輯非常簡單,實用性很強。
③資料庫連接的廣泛性
PHP可以與很多主流的資料庫建立起連接,如MySQL、ODBC、Oracle等,PHP是利用編譯的不同函數與這些資料庫建立起連接的,PHPLIB就是常用的為一般事務提供的基庫。
④面向過程和面向對象並用
在PHP語言的使用中,可以分別使用面向過程和面向對象,而且可以將PHP面向過程和面向對象兩者一起混用,這是其它很多編程語言是做不到的。
(5)php之美擴展閱讀
PHP優點
①流行,容易上手
PHP是目前最流行的編程語言,這毋庸置疑。它驅動全球超過2億多個網站,有全球超過81.7%的公共網站在伺服器端採用PHP。PHP常用的數據結構都內置了,使用起來方便簡單,也一點都不復雜,表達能力相當靈活。
②開發職位很多
在伺服器端的網站編程中PHP會更容易幫助你找到工作。很多互聯網相關企業都在使用PHP開發框架,所以可以說市場對PHP的開發程序員的需求還是比較大的。
③仍然在不斷發展
PHP在不斷兼容著類似closures和命名空間等技術,同時兼顧性能和當下流行的框架。版本是7之後,一直在提供更高性能的應用。
④可植入性強
PHP語言在補丁漏洞升級過程中,核心部分植入簡單易行,且速度快。
⑤拓展性強
PHP語言在資料庫應用過程中,可以從資料庫調取各類數據,執行效率高
『陸』 php項目中,一些銷售報表用什麼開源項目做合適
用extjs的grid,一般表格都是用extjs框架來做(支持EXCEL表格)
ExtJS是一種主要用於創建前端用戶界面,是一個基本與後台技術無關的前端ajax框架。
功能豐富,無人能出其右。
無論是界面之美,還是功能之強,ext的表格控制項都高居榜首。
單選行,多選行,高亮顯示選中的行,拖拽改變列寬度,按列排序,這些基本功能ExtJS輕量級實現。
自動生成行號,支持checkbox全選,動態選擇顯示哪些列,支持本地以及遠程分頁,可以對單元格按照自己的想法進行渲染,這些也算可以想到的功能。
再加上可編輯grid,添加新行,刪除一或多行,提示多行數據,拖拽改變grid大小,grid之間拖拽一或多行,甚至可以在tree和grid之間進行拖拽,這些功能實在太神奇了。更令人驚嘆的是,這些功能竟然都在ext表格控制項里實現了。
其實從ext3開始就支持各種方式的統計,且有控制項支持excel導出。
『柒』 深入講解PHP書籍
去分析優秀的代碼吧,書的話,推薦<<代碼之美>>,所有程序員都應該看的書
『捌』 PHP框架的PHP開發框架
一直以來php框架被廣泛利用,多半都是基於mvc架構模式的,還有基於事件驅動模式的,大致列舉幾個。 ThinkPHP 是一個性能卓越並且功能豐富的輕量級PHP開發框架,本身具有很多的原創特性,並且倡導大道至簡,開發由我的開發理念,用最少的代碼完成更多的功能,宗旨就是讓WEB應用開發更簡單、更快速。從1.*版本開始就放棄了對PHP4的兼容,因此整個框架的架構和實現能夠得以更加靈活和簡單。2.0版本更是在之前的基礎上,經過全新的重構和無數次的完善以及改進,達到了一個新的階段,足以達到企業級和門戶級的開發標准。國人開發的PHP框架,目前最新版本為3.2.3版本。
Canphp是一個中國開源的php框架,主要的設計理念就是為了追求簡單,減少php初學者的學習成本,而且追求高效率,模版類不提供其他標簽,直接應用php的源代碼,還有它是微內核設計,移植性強,鬆散耦合等特點,能集成到你任何一個系統裡面。其中集成的http類相當的強大,採集圖片速度相當的快,為什麼這樣呢?因為適用了模擬非同步多進程的原理。
KYPHP是一個中國開源的PHP框架,kyphp嚴格遵守OOP和MVC的理念,具有控制項化、可擴展性強。kyphp設計理念是自由、簡單。既可以用php源碼編程,也可以使用標簽,支持多語言,多資料庫,多皮膚,多模型部署等,為程序員節省更多的時間。
InitPHP 是一款輕量級的php開發框架,採用分層體系架構,適合大中型網站架構。提供豐富的library類庫,以及簡單的框架擴展機制。InitPHP還提供詳細的開發文檔,可以讓您在使用該框架的時候更加簡單實用。InitPHP實現了抽象DB層、分層體系架構、緩存無縫切換機制、簡單模板機制、多模型部署機制、強大的安全體系,是您快速開發php應用的利器!
SpeedPHP是一款全功能的國產PHP應用框架系統。她以「快速開發、快速學習、快速運行」為理念,在提高團隊開發效率、容易學習及使用、輕量級架構以增加執行速度等方面有著突出的表現。SpeedPHP框架是從實際運行的商業系統中取其精華而成的,在穩定性和運行速度上都非常出色;同時有著清晰的架構,更有利於提高團隊開發效率,教程眾多,入門容易,號稱最適合初學者的PHP框架,快速帶你進入PHP高手的行列。
CdvPHP 一款簡單開源PHP框架,靈感來源於DX,根據實際開發總結匯成快捷方便的輕量級框架。沒有太多的硬性要求,也沒有一本超厚的幫助手冊。快速開發、部署、學習必備利器。KPHP即(kphp開源框架)是為了提高PHP開發效率而研發php開源框架,其核心簡單精煉,代碼安全並易於理解,功能更符合php學習開發的的需要,而且易於學習不改變程序員的開發習慣。 Zend Framework在開發社區中有大量的追隨者,它致力於Web 2.0風格的程序。因為它眾多的追隨者組成的活躍用戶開發的擴展支持,Zend被稱為「The PHP Company」。Zend是一個(也可能不是)今天可用的最受歡迎的PHP開發框架。它有健壯的特徵能夠支持協作開發,它需要一些PHP的額外知識。
Codelgniter 以它的簡單易用,性能和速度而聞名。與 Symphony 不同,這款PHP開發框架對於共享主機的用戶而言很理想,如果你想有一個小型覆蓋面的框架。它提供了簡單的解決方案,還有擴展的知識庫,通過視頻教程,用戶指南和wiki來提供支持。
CakePHP 無論對於初學者還是職業PHP開發者都是很好的選擇。它基於與Rubyon Rails同樣的原則而設計,它十分注重快速開發——這使得它成為一個非常好的用於RAD的開發框架。它快速增長的支持系統,簡潔性和可測量性使得CakePHP成為今天可用的最受歡迎的PHP開發框架之一。
Symfony 是為那些更加職業的主要開發企業級程序的開發者而准備的——特別是 Askeet 和 Yahoo! Bookmarks。這款開源PHP開發框架有著豐富的特性,做起這些來綽綽有餘,它主要的缺點是比其他的框架略微慢一些。
Yii 是一個基於組件、用於開發大型 Web 應用的 高性能 PHP 框架。它將 Web 編程中的可重用性發揮到極致,能夠顯著加速開發進程。Yii(讀作「易」),代表簡單(easy)、高效(efficient)、可擴展(extensible)。
Seagull 是一個良好的PHP開發框架,可以用來開發Web,命令行和GUI程序。這是一款無論對初學者還是職業程序員而言都及其簡單的開發框架。對於初學者,Seagull提供一套包含樣常式序的庫,經過簡單修改就能符合你的要求,而對於專家級程序員,Seagull提供了一整套設置選項——包括最佳練習,標準的和模塊化的代碼庫——來快速簡單地構建Web程序。Seagull有一個活躍的用戶社區以及豐富的支持文檔。
Laravel是一套簡潔、優雅的PHP Web開發框架(PHP Web Framework)。它可以讓你從面條一樣雜亂的代碼中解脫出來;它可以幫你構建一個完美的網路APP,而且每行代碼都可以簡潔、富於表達力。 E是一款非常簡潔優秀開源的超輕量級PHP框架,致力於追求簡潔,安全,自由,高效,是中小型項目首選框架。框架構架合理,一鍵生成完全合乎規范的大型網站文件夾架構,網站架構一目瞭然。強大的外部類庫支持,分布式存儲,強大的緩存系統,內置smarty模板引擎,單入口MVC模式,面向對象編程,具有微內核設計,移植性強,鬆散耦合等特點,能集成到你任何一個系統裡面。無論您是一個NewPHPer 還是OLDPHPER,那麼E框架是您的首選。學習完E框架後您可以快速並且輕松的駕馭其他框架,步入php高手之列。
DuoLamPHP是一款超輕量級的PHP框架,命名是按照多啦A夢動漫給改成的拼音形式。DP是一個簡單、高效、上手容易的PHP框架,遵循apache開源協議。可以快速搭建出一個項目,作為一個超輕量級的PHP框架,完美支持MVC,完全面向對象。
Difeye框架 是一款超輕量級PHP框架,由Kohana框架精簡而來,主要特點有:資料庫連接自動主從讀寫分離配置,適合單機和分布式站點部署;支持Smarty模板機制;支持mysql、nosql類的mongodb等第三方資料庫模塊;完全分離頁面和動作,自動執行Page_Load入口函數,支持二級路由,將頁面模塊和頁面上的動作完全分離,使站點升級遷移更簡單;框架簡單易學容易部署;
GalaxixPhp 是一套專業的php建站框架,主要用於讓用戶在網上的建站,開發人員使用用 GalaxixPhp可以大大的縮小中型甚至大型網站的開發周期。GalaxixPhp 兼容 JavaScript ,可以無縫地與 Javascript,flash,PHP 等程序集成,適合構建展示、CMS、商城、論壇、博客、Wiki、等各種網站。並且官網上學習和說明文檔以及視頻教程齊全。是針對專業開發的人員的收費框架。並且官方正在不斷推出更新更實用的框架插件。最新版本1.1.2.
PhpPeanuts 是一個用以開發資料庫後端應用的PHP框架,包含一個可擴展的動態腳手架用來創建一個完整的web應用,提供用戶界面和ORM,包括CRUD操作、關聯關系以及一些示例查詢。phpPeanuts 2.0 完全支持 PHP 5,遵循 ESTRICT 標准,不再使用變數引用來傳遞對象;提升了靈活性;更獨立的模塊,以及迭代的對象復制等等。
Rong Framework是一個國產的基於php5的面向對象開發框架,開發的主要目的是簡化開發、高性能開發。支持資料庫文件緩存、資料庫通用操作及封裝。簡化CRUD代碼編寫。支持在線生成CRUD代碼,只要選中數據表名稱,就可以生成CRUD代碼。不懂編程的人也可以做到。rong framework分為php代碼模板(class Rong_View_PHP)和Rong_View_Wudimei(無敵美模板引擎,類似smarty)兩種模板機制。擁有良好的MVC機制和url美化方式、可以在代碼中實現URL重寫(由Rong_Countroller_Route實現)。
Openbiz Framework是為搭建企業應用而設計的PHP的基於面向對象的快速開發框架。它可以幫助專業軟體開發人員和技術咨詢專家來構建用於網路上的企業級應用。Openbiz Framework的設計目標是節省構建復雜應用系統的開發投入和縮短開發時間。藉助於Openbiz的幫助,應用程序的開發將基於完善的MVC架構建立,以Metadata驅動為核心描述業務邏輯,支持多種ORM邏輯,並且有Openbiz Appbuilder作為圖形化集成開發環境的快速開發平台。
『玖』 為什麼稱PHP為腳本語言
PHP是一種易於學習和使用的伺服器端腳本語言。只需要很少的編程知識你就能使用PHP建立一個真正交互的WEB站點,本文章並不想讓你完全了解這種語言,只是能使你盡快加入開發動態web站點的行列。我假定你有一些HTML(或者HTML編輯器)的基本知識和一些編程思想。
PHP簡介
PHP是能讓你生成動態網頁的工具之一。PHP網頁文件被當作一般HTML網頁文件來處理並且在編輯時你可以用編輯HTML的常規方法編寫PHP。
PHP代表:超文本預處理器(PHP: Hypertext Preprocessor)。PHP是完全免費的,不用花錢,你可以從PHP官方站點(http://www.php.net)自由下載。PHP遵守GNU公共許可(GPL),在這一許可下誕生了許多流行的軟體諸如Linux和Emacs。你可以不受限制的獲得源碼,甚至可以從中加進你自己需要的特色。PHP在大多數Unix平台,GUN/Linux和微軟Windows平台上均可以運行。怎樣在Windows環境的PC機器或Unix機器上安裝PHP的資料可以在PHP官方站點上找到。安裝過程很簡單。
PHP的版本
Php最新是 Php5,Php5相比Php4,是一個飛躍. PHP5處理對象部分的內核完全重新開發過,提供更多功能的同時也提高了性能,
Php5三大特色功能為:
* 新的對象模式 (New Object Mode)
* 異常處理 (Exceptions)
* 名稱空間 (Namespace)
熟悉 DOTNET,JAVA,C++等面向對象開發的朋友會發現Php5已經完全面向對象化了.這也讓一些攻擊Php是傳統的結構性語言的人無語了.
PHP常用Web系統
下面是一些以PHP開發的廣受歡迎的Web系統.
ShopEX網店系統 Discuz!論壇 PHPWIND論壇
PHPBB論壇 VBB論壇 OsCommerce網店
SABlog博客 Plog博客 CMSware 內容管理
DedeCMS 織夢 Molyx論壇
Php開發相關應用系統
Php開發組合是 Php+Mysql+Zend+IIS/Apache
Mysql4.0:Mysql 是一套優秀的開源資料庫系統,可以參看相關介紹. Php支持各種類型的資料庫,但由於 Php和Mysql都歸於開源軟體,兩者結合在Web開發上表現優異.
Zend5 優化器: Zend優化器可以對Php代碼加密,保護Php代碼的安全性, 更重要的是 Zend 優化器可以極大的提高Php程序運行效率. 經過Zend優化器優化後的代碼比未加密優化的代碼運行效率 可以提高3-10倍.
IIS/Apache Web伺服器: IIS是Microsoft 提供的優秀的Web伺服器.性能穩定安全,功能強大. Apache是一個優秀的開源Web伺服器.在Linux上應用廣泛.
Php應用誤區
誤區1 Php在Linux+Apache運行:實際上 Php可以在各種流行平台下運行. Windows/Linux 都是可以支持的,Windows2003 + IIS6 +Php5 的運行性能表現 絕對可以和 Linux+Apache+Php 相同甚至更高. 並且 安全上更加出色.
誤區2 Php使用的很少: 國外很多網站是以Php開發的,這相比國內 Asp的廣泛應用成鮮明的對比, 現在國內Php的應用慢慢擴大影響.用的人慢慢也多了. 實際國內很多大型的網路公司 都有大規模的使用Php開發. 典型的有 騰訊,雅虎,163,網路 ..........
php的歷史
1995年,Rasmus Lerdorf為了創建他的在線簡歷而創造了"個人主頁工具"(Personal Home Page Tools)。這是一種非常簡單的語言。其後越來越多的人們注意到了這種語言並對其擴展提出了各種建議。在許多人的無私奉獻下以及這種語言本身的源代碼自由性質,它演變成為一種特點豐富的語言,而且現在還在成長中。
PHP雖然很容易學習,但是速度上比mod_perl(植入web伺服器的perl模塊)慢。現在有了可以與mod_perl速度想媲美的被稱作Zend的新引擎,而PHP4就可以充分利用這個引擎。PHP4還處在BETA測試階段。Andy Gutmans和Zeev Suraki是Zend的主要作者。可以去Zend站點(http://www.zend.com)了解更多。
PHP的應用在個人性質的web工程中增長顯著。根據Netcraft在1999年10月的報告,有931122個域和321128個IP地址利用PHP技術。
PHP的先進之處
應用PHP有許多好處。當然已知的不利之處在於PHP由於是開放源碼項目,沒有什麼商業支持,並且由此而帶來的執行速度緩慢(直到PHP4之前)。但是PHP的郵件列表很是有用而且除非你正在運行像Yahoo!或者Amazon.com這樣的極受歡迎的站點,你不會感覺出PHP的速度與其他的有什麼不同。最起碼我就沒有感覺出來!好了,讓我們來看看PHP有那些優點:
- 學習過程簡單
PHP的非常簡單的學習過程。與Java和Perl不同,你不必把頭埋進100多頁的文檔中努力學習才可以寫出一個象樣的程序。只要了解一些基本的語法和語言特色,你就可以開始你的PHP編碼之旅了。之後你在編碼過程中如果遇到了什麼麻煩,還可以再去翻閱相關文檔。
PHP的語法與C,Perl,ASP或者JSP。對於那些對上述之一的語言較熟悉的人來說,PHP太簡單了。相反的,如果你對PHP了解較多,那麼你對於其他幾種語言的學習都很簡單了。
你只需要30分鍾就可以將PHP的核心語言特點全部掌握,你可能已經非常了解HTML,甚至你已經知道怎樣用編輯設計軟體或者手工來製作好看的WEB站點。由於PHP代碼能夠無障礙的添加進你的站點,在你設計和維護站點的同時,你可以很輕松的加入PHP使得你的站點更加具有動態特性。
- 資料庫連接
PHP可以編譯成具有與許多資料庫相連接的函數。PHP與MySQL是現在絕佳的組合。你還可以自己編寫外圍的函數取間接存取資料庫。通過這樣的途徑當你更換使用的資料庫時,可以輕松的更改編碼以適應這樣的變化。PHPLIB就是最常用的可以提供一般事務需要的一系列基庫。
- 可擴展性
就像前面說的那樣,PHP已經進入了一個高速發展的時期。對於一個非程序員來說為PHP擴展附加功能可能會比較難,但是對於一個PHP程序員來說並不困難。
- 面向對象編程
PHP提供了類和對象。基於web的編程工作非常需要面向對象編程能力。PHP支持構造器、提取類等。
- 可伸縮性
傳統上網頁的交互作用是通過CGI來實現的。CGI程序的伸縮性不很理想,因為它為每一個正在運行的CGI程序開一個獨立進程。解決方法就是將經常用來編寫CGI程序的語言的解釋器編譯進你的web伺服器(比如mod_perl,JSP)。PHP就可以以這種方式安裝,雖然很少有人願意這樣以CGI方式安裝它。內嵌的PHP可以具有更高的可伸縮性。
- 更多特點
PHP的開發者們為了更適合web編程,開發了許多外圍的流行基庫,這些庫包含了更易用的層。你可以利用PHP連接包括Oracle,MS-Access,Mysql在內的大部分資料庫。你可以在蒼蠅上畫圖,編寫程序下載或者顯示e-mail。你甚至可以完成網路相關的功能。最好的是,你可以選擇你的PHP安裝版本需要哪些功能。引用Nissan的Xterra的話來說就是PHP可以做到你想讓它做到的一切而且無所不能!
『拾』 php 系統架構
網上收索的,共享給你:
《Beautiful Architecture》?
《Beautiful Code》的姐妹作,裡面有三成的架構是自己感興趣的,已經有國內出版社拿下了,架構師的唐詩三百首------O'reilly新書Beautiful Architecture(InfoQ)?。
《97 Things Every Software Architect Should Know 》?
一個開放的wiki?,O'Reilly 將它發布成書,不知道有沒人在翻,架構公理的書(InfoQ)?。
《Pattern-Oriented Software Architecture, Volume 4 - A Pattern Language forDistributed Computing》?
架構模式的集大成者,號稱有人在翻但等了一年中文版還是沒翻出來啊,面向模式軟體架構第4、5卷出版(InfoQ)?。
架構技術類
雲計算已經開始代替SOA成為新一代Buz Word,回顧一下整個SOA出版風潮,自己覺得值得一讀不忽悠的居然只有一本《SOA in Practic - SOA實踐指南-分布式系統設計的藝術》?。
在熱潮徹底退卻前,SOA的書還在繼續出著,OSGI與SCA的書也開始出現:
《SOA Design Patterns》?
又是Thomas Erl的書,很奇怪的連電子版都找不到,SOA設計模式出版啦(InfoQ)?。
還 沒出版的呀一大堆 --《SOA Patterns》、《ESB Architecture for SOA》、《SOA with Java》、《Open Source SOA》、《OSGi in Action》、《SpringSource dm Server in Action》、《Molar Java: Creating Flexible Applications with OSGi and Spring》、《Understanding SCA》、《Apache Tuscany in Action》...
編程匠師類
立志做一個匠師的人今年比較幸福,可以看的書很多:
《Beautiful Code - 代碼之美》 ?
很有經典潛質的一本,去年沒有讀完今年繼續,《代碼之美》的精選版(InfoQ)?。
《Protive Programmer - 卓有成效的程序員》?
Thoughtworks中國翻譯的,看了下樣章,熊節(透明)的翻譯依然是這么好, 《卓有成效的程序員》推薦序:做一個懶人(InfoQ)?。
《Clean Code: A Handbook of Agile Software Craftsmanship》?
Rober。C大叔的書,不知道誰在翻,應該很容易翻啊,到後面大段大段都是代碼。
《Effective Java中文版(第2版)》
Web系統架構及開發推薦書籍:
一、《Linux企業集群—用商用硬體和免費軟體構件高可用集群》
深入分析了LVS, HeartBeat等,是構建Linux集群不可多得的資料。
二、《構建高性能Web站點》
重點介紹如何構建一個高性能的Web系統,國內為數不多的值得一讀的技術書籍。
三、《大規模Web服務開發技術》
對大型網站涉及到的技術及相關知識點做了介紹。
四、《構建可擴展的Web站點》
Flicker的經驗之談,重點講述如何構建一個可擴展的Web系統。
五、《Web容量規劃的技術》
Flicker的經驗之談,重點講述如何進行容量規劃。
六、Scalability Rules: 50 Principles for Scaling Web Sites
主要講述如何開發易擴展的系統。
七、《分布式資料庫系統及其應用》(第二版)
中
科院研究生教材,很有料!大型網站的資料庫通常是分布式的,如何設計分布式資料庫系統?如何優化分布式查詢?本書都作了比較專業的解答。另外,
《MongoDB權威指南》、《Cassandra權威指南》對了解NoSQL的同學來說,也非常值得一讀。選擇合適的數據存儲工具是架構師經常面對的問
題。
php架構:
《企業應用架構模式》
《軟體架構的藝術》
《J2EE核心模式》
四人幫《設計模式》——推薦其他衍生書籍。
《架構實戰—軟體架構設計的過程》英文版最好,中文翻譯的太差。
《J2EE反模式》
《POSA》的5本(《面向模式的軟體架構》系列)
《架構之美》
《模型驅動設計》