PHP相關名詞通俗解釋
阿新 • • 發佈:2019-12-31
CGI
- CGI(Common Gateway Interface) 是為了保證web server傳遞過來的資料是標準格式的,方便CGI程式的編寫者。
- 是個協議,跟程式什麼的沒關係。
- 可以用任何一種語言編寫,只要這種語言具有標準輸入、輸出和環境變數。
FastCGI
- 是用來提高CGI程式效能的。CGI程式反覆載入是CGI效能低下的主要原因,如果CGI程式保持在記憶體中並接受FastCGI程式管理器排程,則可以提供良好的效能、伸縮性、Fail-Over特性等。
- 是常駐型的CGI,它可以一直執行,在請求到達時,不會花費時間去fork一個程式來處理。
- 是CGI的升級版,一種語言無關的協議,用來溝通程式(如PHP,Python,Java)和Web伺服器(Apache2,Nginx),理論上任何語言編寫的程式都可以通過Fastcgi來提供Web服務。
PHP-FPM
- (FastCGI Process Manager)大家都知道,PHP的直譯器是php-cgi。php-cgi只是個CGI程式,他自己本身只能解析請求,返回結果,不會程式管理(皇上,臣妾真的做不到啊!)所以就出現了一些能夠排程php-cgi程式的程式,比如說由lighthttpd分離出來的spawn-fcgi。好了PHP-FPM也是這麼個東東,在長時間的發展後,逐漸得到了大家的認可(要知道,前幾年大家可是抱怨PHP-FPM穩定性太差的),也越來越流行。
- 使用PHP-FPM來控制PHP-CGI的FastCGI程式。在沒有PHP-FPM之前,是直接開啟php-cgi.exe(win32)、php-cgi程式來處理fastcgi的請求的。或者是用spawn-fcgi或uwsgi類似的fastcgi程式管理軟體。PHP-FPM的目的就是解決spawn-fcgi和uwsgi等類似管理器的缺陷,自php5.3以後版本開始被官方加入。
phpize
- 是用來擴充套件php擴充套件模組的,通過phpize可以建立php的外掛模組。
- 比如你想在原來編譯好的php中加入memcached或者ImageMagick等擴充套件模組,可以使用phpize。
PECL
- PHP Extension Community Library,它管理著最底層的PHP擴充套件。這些擴充套件是用 C 寫的。
PEAR
- PHP Extension and Application Repository,它管理著專案環境的擴充套件。這些擴充套件是用 PHP 寫的。
Composer
- PHP依賴管理的新時代
- 對於現代語言而言,包管理器基本上是標配。Java 有 Maven,Python 有 pip,Ruby 有 gem,Nodejs 有 npm。PHP 的則是 PEAR,不過 PEAR 坑不少:
- 依賴處理容易出問題
- 配置非常複雜
- 難用的命令列介面
- 好在我們有 Composer,PHP依賴管理的利器。它是開源的,使用起來也很簡單,提交自己的包也很容易。
PSR
- PHP Standard Recommendations,由 PHP FIG 組織制定的 PHP 規範,是 PHP 開發的實踐標準。
- 目前已表決通過了 6 套標準,已經得到大部分 PHP 框架的支援和認可。
SAPI
- Server Application Programming Interface(服務端應用程式設計埠)
- PHP通過SAPI提供了一組介面,供應用和PHP核心之間進行資料互動。
PHP CLI
- 從版本 4.3.0 開始,PHP 提供了一種新型別的 CLI SAPI支援,名為 CLI,意為 Command Line Interface,即命令列介面。
- 主要用作 PHP 的開發外殼應用。
影響 PHP 行為的擴充套件
- APC Alternative PHP Cache (可選 PHP 快取)
- APCu APC User Cache
- APD Advanced PHP debugger
- bcompiler PHP 位元組碼編譯器
- BLENC BLowfish ENCoder for PHP source scripts
- 錯誤處理 錯誤處理和日誌記錄
- htscanner htaccess-like support for all SAPIs
- inclued Inclusion hierarchy viewer
- Memtrack 簡單監視記憶體使用情況
- OPcache 效能加速
- 輸出控制 輸出緩衝控制
- PHP 選項/資訊
- runkit official PECL PHP Runkit extension
- scream Break the silence operator
- uopz User Operations for Zend
- Weakref Weak References
- WinCache Windows Cache for PHP
- Xhprof 層次式效能分析器
本地環境
PHP Version 7.1.13 - phpinfo() Configuration
- BCMath 任意精度數學[數學擴充套件]
- Bzip2 用於透明地讀寫 bzip2(.bz2)壓縮檔案[壓縮與歸檔擴充套件]
- Calendar [日期與時間相關擴充套件]
- Ctype 字元型別檢測[變數與型別相關擴充套件]
- cURL Client URL 庫[其它服務]
- DBA Database (dbm-style) Abstraction Layer[資料庫抽象層]
- DOM Document Object Model[XML 操作]
- EXIF 可交換影象資訊[影象生成和處理]
- Fileinfo 檔案資訊[檔案系統相關擴充套件]
- Filter Data Filtering[變數與型別相關擴充套件]
- FTP 實現了通過 FTP 協議訪問檔案伺服器的客戶端[FTP]
- GD 影象處理[GD]
- Gettext 實現了NLS (Native Language Support) API,他可以用來國際化您的PHP程式[國際化與字元編碼支援]
- Hash 雜湊資訊摘要框架[加密擴充套件]
- iconv 字符集轉換[國際化與字元編碼支援]
- Json JavaScript物件符號[其它基本擴充套件]
- LDAP Lightweight Directory Access Protocol[其它服務]
- libxml [XML 操作]
- mbstring 多位元組字串[國際化與字元編碼支援]
- MySQLi MySQL增強版擴充套件[MySQL]
- Mysqlnd MySQL Native Driver[MySQL]
- ODBC [資料庫抽象層]
- OpenSSL 對稱/非對稱加解密,以及 PBKDF2、 PKCS7、 PKCS12、 X509 和其他加密操作[加密擴充套件]
- PCNTL 程式控制[程式控制擴充套件]
- PCRE 正則表示式(相容 Perl)[文書處理]
- PDO PHP 資料物件[資料庫抽象層]
- PDO_MYSQL MySQL Functions[PDO 驅動]
- PDO_ODBC ODBC and DB2 Functions[PDO 驅動]
- PDO_SQLITE SQLite Functions[PDO 驅動]
- Phar [壓縮與歸檔擴充套件]
- POSIX [程式控制擴充套件]
- Readline 實現了訪問 GNU Readline 庫的介面[針對命令列的擴充套件]
- Reflection 反射[變數與型別相關擴充套件]
- Session
- Session Handling[Session 擴充套件]
- shmop Shared Memory[程式控制擴充套件]
- SimpleXML [XML 操作]
- SOAP [Web 服務]
- Sockets [其它服務]
- SPL PHP標準庫 (SPL)[其它基本擴充套件]
- SQLite3 [針對各資料庫系統對應的擴充套件]
- Streams 流[其它基本擴充套件]
- 在PHP中有這麼一族函式,他們是對UNIX的V IPC函式族的包裝
- sysvmsg
- sysvsem
- sysvshm 記憶體共享方案
- Tokenizer [其它基本擴充套件]
- WDDX [XML 操作]
- XML
- XML 解析器[XML 操作]
- XMLReader [XML 操作]
- XML-RPC [Web 服務]
- XMLWriter [XML 操作]
- XSL [XML 操作]
- Zip [壓縮與歸檔擴充套件]
- Zlib
- Zlib Compression [壓縮與歸檔擴充套件]