PHP 是什麼?
PHP(“PHP: Hypertext Preprocessor”,超文本預處理器的字母縮寫)是一種被廣泛應用的開放原始碼的多用途腳本語言,它可嵌入到 HTML中,尤其適合 web 開發。
以上是一個簡單的回答,不過這是什麼意思呢?請看如下例子:
Example #1 一個介紹性的範例
<span style="font-size:18px;"><html>
<head>
<title>Example</title>
</head>
<body>
<?php
echo "Hi, I'm a PHP script!";
?>
</body>
</html></span>
請注意這個範例和其它用C 或Perl 語言寫的腳本之間的區別——與用大量的命令來編寫程式以輸出HTML 不同的是,PHP 頁面是HTML,只不過在其中嵌入了一些程式碼來做一些事情(在本例中輸出了"Hi, I'm a PHP script!")。 PHP 程式碼包含在特殊的起始符和結束符 中,使得可以進出「PHP 模式」。
和客戶端的 JavaScript 不同的是,PHP 程式碼是運行在服務端的。如果在伺服器上建立瞭如上例類似的程式碼,則在執行該腳本後,用戶端就能接收到其結果,但他們無法得知其背後的程式碼是如何運作的。甚至可以將 web 伺服器設定成讓 PHP 來處理所有的 HTML 文件,這麼一來,使用者就無法得知服務端到底做了什麼。
使用 PHP 的一大優點是它對初學者來說極為簡單,同時也為專業的程式設計師提供了各種進階的特性。
PHP 能做什麼?
PHP 能做任何事。 PHP 主要是用於服務端的腳本程序,因此可以用 PHP 來完成任何其它的 CGI 程序能夠完成的工作,例如收集表單數據,生成動態網頁,或者發送/接收 Cookies。但 PHP 的功能遠遠不限於此。
PHP 腳本主要用於以下三個領域:
服務端腳本。這是 PHP 最傳統,也是最主要的目標領域。進行這項工作需要具備以下三點:PHP 解析器(CGI 或伺服器模組)、web 伺服器和 web 瀏覽器。需要在執行 web 伺服器時,安裝並設定 PHP,然後,可以用 web 瀏覽器來存取 PHP 程式的輸出,也就是瀏覽服務端的 PHP 頁面。如果只是實驗 PHP 編程,所有的這些都可以運行在自己家裡的電腦。請查閱安裝一章以獲取更多資訊。
命令列腳本。可以編寫一段 PHP 腳本,並且不需要任何伺服器或瀏覽器來運行它。透過這種方式,僅僅只需要 PHP 解析器來執行。這種用法對於依賴 cron(Unix 或 Linux 環境)或 Task Scheduler(Windows 環境)的日常運行的腳本來說是理想的選擇。這些腳本也可以用來處理簡單的文字。請參閱 PHP 的命令列模式以取得更多資訊。
編寫桌面應用程式。對於有著圖形介面的桌面應用程式來說,PHP 或許不是一種最好的語言,但是如果使用者非常精通PHP,並且希望在客戶端應用程式中使用PHP 的一些高級特性,可以利用PHP-GTK 來編寫這些程序。用這種方法,還可以編寫跨平台的應用程式。 PHP-GTK 是 PHP 的一個擴展,在通常發布的 PHP 套件中並不包含它。如果對 PHP-GTK 感興趣,請訪問其? 網站以獲取更多資訊。
PHP 能夠在所有的主流作業系統上使用,包括 Linux、Unix 的各種變種(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、Mac OS X、RISC OS 等。今天,PHP已經支援了大多數的 web 伺服器,包括 Apache、Microsoft Internet Information Server(IIS)、Personal Web Server(PWS)、Netscape 以及 iPlant server、Oreilly Website Pro Server、Caudium、Xitami、OmniHTTPd
等。對於大多數的伺服器,PHP 提供了一個模組;還有一些 PHP 支援 CGI 標準,使得 PHP 能夠作為 CGI 處理器來運作。
綜上所述,使用 PHP,可以自由地選擇作業系統和 web 伺服器。同時,也可以在開發時選擇使用面對過程和麵對對象,或兩者混和的方式來發展。儘管 PHP 4 不支援 OOP 所有的標準,但許多程式碼倉庫和大型的應用程式(包括 PEAR 函式庫)僅使用 OOP 程式碼來開發。 PHP 5 彌補了 PHP 4 的這個弱點,引入了完整的物件模型。
使用 PHP,不限於輸出 HTML。 PHP 也能被用來動態輸出影像、PDF 檔案甚至 Flash 動畫(使用 libswf 和 Ming)。也能夠非常簡單的輸出文本,例如 XHTML 以及任何其它形式的 XML 檔案。 PHP 能夠自動產生這些文件,在服務端開闢出一塊動態內容的緩存,可以直接把它們列印出來,或將它們儲存到文件系統中。
PHP 最強大最顯著的特性之一,是它支援很大範圍的資料庫。使用任何針對某資料庫的擴充(例如 mysql)編寫資料庫支援的網頁非常簡單,或使用抽象層如 PDO,或透過 ODBC 擴充連接到任何支援 ODBC 標準的資料庫。其它一些資料庫也可能會用 cURL 或 sockets,例如 CouchDB。
PHP 也支援利用諸如 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows 環境)等不計其數的協定的服務。還可以開放原始網路端口,使得任何其它的協定能夠協同工作。 PHP 支援和所有 web 開發語言之間的 WDDX 複雜資料交換。關於相互連接,PHP 已經支援了對 Java 物件的即時連接,並且可以透明地將其用作 PHP 物件。
PHP 具有極為有效的文字處理特性,包括 Perl 相容正規表示式(PCRE)以及許多擴充功能和工具可用於解析和存取 XML 文件。 PHP 將所有的 XML 功能標準化於堅實的 libxml2 擴展,並且還增加了 SimpleXML,XMLReader 以及 XMLWriter 支援以擴充其功能。
另外,還有很多其它有趣的擴充庫,在此根據字母和分類歸類列出。還有一些附加的 PECL 擴充功能可能有也可能沒有在 PHP 手冊中列出,例如 ? XDebug。
以上就介紹了PHP教程之00----入門指引,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。