當前位置:編程學習大全網 - 源碼下載 - 如何把自己寫的php源代碼變成程序,就像windows下的計算器那樣

如何把自己寫的php源代碼變成程序,就像windows下的計算器那樣

PHP是編程語言和應用程序服務器的結合。PHP和其它的編程語言類似,使用變量存儲臨時數值,使用操作符處理變量。PHP的真正價值在於它是壹個應用程序服務器。

當談到應用程序服務器的時候,我是指壹個把幾個不同的技術組合為壹個完整的套件的程序。這些技術包括:

* 壹個強壯的編程語言。

* 存取數據庫中存儲的數據。

* 支持 Internet協議,尤其是電子郵件和HTTP協議。

註意:應用程序服務器有許多其它的特性,這裏只列出了最基本的特性。

由於提供了這些多種不同技術的前端接口,PHP可以使工作變的很容易。

本章的其它部分講述了有關PHP的許多繁雜資料,以及它在應用軟件開發中起到的作用。

1.1 起源

PHP是由Rasums Lerdorf創建的,它開始是壹個簡單的用Perl語言編寫的程序,用來記錄Rasums Lerdorf自己在線簡歷的訪問者。以後它又被用C語言重新寫過,範圍擴大到訪問數據庫。在這期間,有許多人向Rasums Lerdorf要此程序的拷貝,以便自己使用。Rasums Lerdorf為此寫了壹些介紹此程序的文檔,並發布PHP v1.0。以後,越來越多的人開始使用PHP,並強烈要求增加壹些其他的特性,如循環語句和數組變量等。到這時,其他的壹些程序員也開始參與PHP源碼的編寫(主要有Zeev Suraki和Andi Gutmans),很明顯,此時的PHP為了以後的發展,必須重新編寫。因此,PHP v3.0就出現了。

1.2 特性

PHP的特性包括:

* 開放源碼 -- 所有的PHP源碼都可以得到。事實上,所有的源碼都包含在隨書附帶的光盤中。

* 沒有運行費用 -- PHP是免費的。

* 基於服務器端 -- 由於PHP是在Web服務器端運行的,PHP程序可以很大、很復雜而不會降低客戶端的運行速度。

* 跨平臺 -- 雖然本書是以Linux為重點介紹的,但PHP程序可以運行在UNIX,Linux,或者Windows操作系統下。

* 嵌入HTML -- 因為PHP語言可以嵌入到HTML內部,所以PHP很容易學習。

* 簡單的語言 -- 和Java和C++不同,PHP語言堅持以基本語言為基礎,然而它的功能也強大到足以支持任何類型的Web站點。

* 效率高 -- 和其它的解釋性語言相比,PHP系統消耗較少的系統資源。當PHP作為Apache Web服務器的壹部分時,運行代碼不需要調外部二進制程序,服務器解釋腳本不需要承擔任何額外負擔。

* 分析XML -- 用戶可以組建壹個可以讀取XML信息的PHP版本。

* 數據庫模塊 -- 用戶可以使用PHP存取Oracle、Sybase、MS SQL、Adabase D、MySQL、mSQL、PostgreSQL、dBase、FilePro、Unix dbm、Informix/Illustra等類型的數據庫,以及任何支持ODBC標準的數據庫。

* 文件存取--PHP有許多支持文件存取函數。

* 文本處理--PHP有許多函數處理字符串,其中包括模式匹配的能力。

* 復雜的變量--PHP支持標量、數組、關聯數組等變量,這給用戶提供了以支持其它的高級數據結構的堅實基礎。

* 圖象處理--用戶可以使用PHP動態的創建圖象。

* 更多的其它功能!

1.3 PHP需要花費多少錢?

PHP是免費的。所有的源碼、文檔都可以免費的復制、編譯、打印和分發。用戶的任何壹個用PHP編寫的程序都屬於用戶自己,可以按照自己的意願進行處理,而不需要付任何版稅。就PHP本身而言,用戶可以無限制地發布自己編寫的程序。

然而,有著很充分的理由,PHP並不是徹底的“公***領域”代碼。如果PHP源碼是完全的公***領域代碼,很可能就有人對PHP的源碼做很小的修改,然後編譯並出售--換壹句話說,從它的創作者中脫離出來。但從另壹方面說,如果不公布源碼,很難使想使用它的用戶感到放心。

GNU通用公***許可是壹種發布免費軟件的方法,它可以避免其他人占有妳的勞動成果。在符合GNU許可的條件下,源碼可以自由地發布,並且任何壹個人都可以使用,但是任何來源於此代碼的程序必須以同樣種類的許可方式發布。換句話說,如果用戶從任何GNU許可下的源碼中得到代碼而編寫自己的程序,用戶必須給任何想得到源碼的人***布自己的源碼。

1.4 PHP語言可以嵌入HTML中

當使用者使用經典程序設計語言(如C或Pascal)編程時,所有的代碼必須編譯成壹個可執行的文件,然後該可執行文件在運行時,為遠程的Web瀏覽器而產生可顯示的HTML標記。但另壹方面,PHP並不需要編譯(至少不編譯成可執行文件)。使用者可以把自己的代碼混合到HTML中。例如,下面的代碼將顯示“Hello,world!”,PHP代碼在下面以黑體字顯示。

<HTML>

<HEAD><TITLE>Test</TITLE></HEAD>

<BODY>

<?PHP $string = 'world!'; ?>

<H1>Hello,<?php echo $string ?></H1>

</BODY>

</HTML>

PHP應用程序服務器(本書的主要寫作目的)是緊密集成到Apache Web服務器中的,可以在壹個程序內同時調用它們兩個。當Web瀏覽器請求PHP Web頁面的時候,Web服務器的PHP部分將被調用進行解釋。Web服務器在請求的Web頁中尋找<?PHP . . . ?>標記,並按要求執行這些PHP代碼。

由PHP代碼生成的輸出將替代<?PHP . . . ?>標記。例如,當PHP代碼運行後,以前的Web頁面將變成如下所示的內容:

<HTML>

<HEAD><TITLE>Test</TITLE></HEAD>

<BODY>

<H1>Hello,world!</H1>

</BODY>

</HTML>

註意,所有的PHP代碼都消失了,僅僅留下了HTML語句。而由PHP代碼生成的HTML語句在上例中以黑體的形式顯示。

1.5 PHP語言是在Web服務器端運行

當開發互聯網應用程序時,很重要的壹點是要清楚應用程序是在哪壹端運行的。PHP總是運行在服務器端。不要嘲笑對這壹點的強調。在以後考慮對應用程序某些特性進行規劃時,有的人可能就會在應用程序在哪裏運行的這個問題上搞錯,不要讓自己也成為這些人中的壹個。

由於Java applets,ActiveX,或javascript 都是運行在客戶端的Web瀏覽器中的,因此PHP不能直接和它們進行比較。然而可以很容易的將這些語言與PHP相結合在壹起,使用PHP可以很方便地生成所需要的任何HTML代碼,當然也就能激活Java applets和ActiveX控件,還可以動態生成javascript語句。當對互聯網應用程序開發還很陌生的時候,這也許沒有什麽意義,但是在讀完這本書後,這壹切就會變得十分清晰的了。

1.6 PHP無處不在

無處不在是常使用的充滿激情的詞語,到1999年7月,將有60萬左右的Web站點使用PHP,1999年夏天有關Linux和開放代碼運動的大發展很可能使PHP團體有突破性發展。可以在站點上看到它的發展趨勢圖表。

此外,PHP郵件列表每天能收到大約80個電子郵件,每個月能收到大約2500個電子郵件,這說明PHP是壹個非常活躍的開發團體。使用PHP的商業公司有以下幾個,Mitsubishi Motors、Volvo、Red Hat Software、E*Trade、First USA Bank、the San Francisco Giants和San Diego Zoo等等。

1.7 PHP和C或Java相似嗎?

PHP程序和C程序有略微相似的地方,這是由於PHP來源於C、Perl和Java。壹些對C語言來講比較麻煩的方面(如處理字符串的技術),由於采用了和Perl相近的技術,在PHP中就不再是麻煩了。PHP中也不包括Java中的壹些面向對象特性。

PHP能很好地處理某些低級的任務,如果代碼需要運行的特別快,可以很方便的使用C為PHP程序編寫模塊。

1.8 PHP比ColdFusion、Active Server Page或Java Server Page更好嗎?

以流行的商議方式,我總是回答,“可以是,也可以不是”。

回答是,是由於它的費用(免費)以及可以通過郵件列表、IRC而在世界範圍內有廣泛的支持網絡。同時PHP還在不斷地發展著,如果想要壹個PHP現在沒有的特性時,請等待幾個月,就有人很快為PHP編程而加上此種特性。

回答不是,是由於商業軟件有比PHP更多的特性。例如,Allaire's ColdFusion有壹個已證實可靠的搜索引擎組件。微軟的Active Server Page技術提供了與Outlook、電子郵件和工作組程序相結合的能力。Java Server Page讓使用者可以使用互聯網上的大量開放源碼模塊。

1.9 總結

對於遍及互聯網上的PHP,本章僅僅簡要提到了它的壹些特性,本章也介紹了當設計互聯網應用程序時,PHP為什麽是最好的編程工具之壹的原因。

  • 上一篇:java中多線程的執行順序是順序的嗎?
  • 下一篇:實施CRM的策略有哪些
  • copyright 2024編程學習大全網