PHP 可以做什麼?
幾乎任何事。PHP 主要專注於伺服器端指令碼,因此它可以執行任何其他 CGI 程式可以執行的任務,例如收集表單資料、產生動態頁面內容,或傳送和接收 Cookie。但 PHP 能做的遠不止於此。
PHP 指令碼主要用於兩個方面。
伺服器端指令碼。這是 PHP 最廣泛使用和主要目標領域。要使其運作,需要三個要素:PHP 解析器(CGI 或伺服器模組)、網頁伺服器和網頁瀏覽器。為了方便 PHP 程式設計的實驗,所有這些都可以在本地機器上執行。請參閱 安裝說明 章節以了解更多資訊。
命令列指令碼。PHP 指令碼可以在沒有任何伺服器或瀏覽器的情況下執行,只需要 PHP 解析器即可。這種用法非常適合使用 cron(在 Unix 或 macOS 上)或工作排程器(在 Windows 上)定期執行的指令碼。這些指令碼也可用於簡單的文字處理任務。請參閱 PHP 命令列用法 章節以了解更多資訊。
PHP 可以在所有主要作業系統上 使用,包括 Linux、許多 Unix 變體(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、macOS、RISC OS,以及其他可能的系統。PHP 也支援現今大多數的網頁伺服器,包括 Apache、IIS 以及許多其他伺服器。這也包含任何可以利用 FastCGI PHP 二進位檔的網頁伺服器,例如 lighttpd 和 nginx。PHP 可以作為模組或 CGI 處理器運作。
因此,使用 PHP,開發人員可以自由選擇作業系統和網頁伺服器。此外,他們還可以選擇使用程序式程式設計或物件導向程式設計 (OOP),或是兩者的混合。
PHP 不僅限於輸出 HTML。PHP 的功能還包括輸出豐富的檔案類型,例如圖像或 PDF 檔案、加密資料和傳送電子郵件。它也可以輕鬆輸出任何文字,例如 JSON 或 XML。PHP 可以自動產生這些檔案,並將其儲存在檔案系統中,而不是列印出來,形成動態內容的伺服器端快取。
PHP 最強大且最重要的功能之一就是它支援各種資料庫。使用資料庫專用的擴充套件(例如,mysql),或使用像 PDO 這樣的抽象層,或者透過 ODBC 擴充套件連接到任何支援開放式資料庫連接標準的資料庫,編寫支援資料庫的網頁都非常簡單。其他資料庫可以使用 cURL 或 sockets,例如 CouchDB。
PHP 也支援使用 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(在 Windows 上)以及無數其他協定與其他服務通訊。它也可以開啟原始網路通訊端並使用任何其他協定進行互動。PHP 支援幾乎所有網頁程式語言之間的 WDDX 複雜資料交換。談到互連性,PHP 支援 Java 物件的實例化,並將它們透明地用作 PHP 物件。
PHP 具有實用的文字處理功能,其中包括與 Perl 相容的正規表示式(PCRE),以及許多用於解析和存取 XML 文件的擴充套件和工具。PHP 將所有 XML 擴充套件標準化在 libxml2 的堅實基礎上,並擴展了功能集,增加了 SimpleXML、XMLReader 和 XMLWriter 的支援。
還有許多其他有趣的擴充套件,它們按字母順序和類別分類。此外,還有一些額外的 PECL 擴充套件,它們可能在 PHP 手冊中沒有說明文件,例如 » XDebug。
此頁面不足以列出 PHP 可以提供的所有功能和優點。請閱讀關於安裝 PHP的部分,並參閱函式參考部分,以了解這裡提到的擴充套件的說明。