1. 配置yum源
追加CentOS 6.5的epel及remi源。
# rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
以下是CentOS 7.0的源。
# yum install epel-release
# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
2. 安裝PHP5.6
yum源配置好了,下一步就安裝PHP5.6。
# yum install --enablerepo=remi --enablerepo=remi-php56 php php-opcache php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof
經(jīng)過兩個步驟,php就已經(jīng)安裝金centos了。
通過
# php --version
可以查到php的版本。
但,在第二步中,是一次性安裝了php與其所有的依賴,現(xiàn)在,我拆解來裝,一步步分析,在安裝過程分別裝了什么進去。
1. 安裝PHP
yum install --enablerepo=remi --enablerepo=remi-php56 php


可以看到,安裝PHP,分別安裝了以下組件。
php.x86_64 0:5.6.37-1.el7.remi
php-cli.x86_64 0:5.6.37-1.el7.remi?
php-cli?(?php Command Line Interface)? 這個組件的加載允許PHP在命令行工具里執(zhí)行PHP代碼? ?
php-common.x86_64 0:5.6.37-1.el7.remi
這個應(yīng)該是一個公共模塊吧,我也不知道,有知道的告知一下,謝謝。
php-pecl-jsonc.x86_64 0:1.3.10-2.el7.remi.5.6
讓PHP支持json

php-pecl-zip.x86_64 0:1.15.3-1.el7.remi.5.6
讓PHP支持zip

2. 安裝php-opcache
yum install --enablerepo=remi --enablerepo=remi-php56 php-opcache

Zend OPCache 的前身是Zend Optimizer + (Zend O+),于 2013年3月中旬改名為 Opcache。其通過 opcode 緩存和優(yōu)化提供更快的 PHP 執(zhí)行過程。它將預(yù)編譯的腳本文件存儲在共享內(nèi)存中供以后使用,從而避免了從磁盤讀取代碼并進行編譯的時間消耗。同時,它還應(yīng)用了一些代碼優(yōu)化模式,使得代碼執(zhí)行更快。
PHP 在5.5發(fā)行版后自帶了Zend OPCache擴展,但默認沒有開啟,PHP5.2,5.3,5.4版也可以使用,但需要自行下載擴展。

3.? ???安裝php-devel
PHP的開發(fā)包,可以在正式環(huán)境安裝。很多語言都有類似的開發(fā)包,比如 Python 有 python-dev ,主要是 C/C++ 頭文件,有些擴展/插件用 C/C++ 寫的編譯時需要用到它。

4.? ???安裝php-mbstring
各種語言都有自己的編碼,他們的字節(jié)數(shù)是不一樣的,mbstring擴展就是為確保不同編碼的語言在PHP程序中能夠正常顯示提供解決方案。

5.? ???安裝php-mcrypt
mcrypt 是php里面重要的加密支持擴展庫,linux環(huán)境下該庫在默認情況下不開啟。window環(huán)境下,PHP>=5.3,默認開啟mcrypt擴展。
PHP程序員們在編寫代碼程序時,除了要保證代碼的高性能之外,還有一點是非常重要的,那就是程序的安全性保障。PHP除了自帶的幾種加密函數(shù)外,還有功能更全面的PHP加密擴展庫Mcrypt和Mhash。
其中,Mcrypt擴展庫可以實現(xiàn)加密解密功能,就是既能將明文加密,也可以密文還原。

6. 安裝php-mysqlnd
Mysql Native驅(qū)動(Mysql Native Driver 簡稱:mysqlnd )在PHP5.3.0版本中被引入。PHP5.4之后的版本mysqlnd被作為默認配置選項。 由zend 公司開發(fā)的MySQL數(shù)據(jù)庫驅(qū)動,采用PHP開源協(xié)議(即 PHP license)避免了任何可能存在的版權(quán)問題。mysqlnd提供了和Zend引擎高度的集成性,更加快速的執(zhí)行速度,更少的內(nèi)存消耗,利用了PHP的Stream API,以及客戶端緩存機制。由于mysqlnd是透過Zend引擎,因此提供更多高級特性,以及有效利用Zend進行加速
php-pdo
PHP 數(shù)據(jù)對象 (PDO) 擴展為PHP訪問數(shù)據(jù)庫定義了一個輕量級的一致接口。
PDO 提供了一個數(shù)據(jù)訪問抽象層,這意味著,不管使用哪種數(shù)據(jù)庫,都可以用相同的函數(shù)(方法)來查詢和獲取數(shù)據(jù)。
PDO隨PHP5.1發(fā)行,在PHP5.0的PECL擴展中也可以使用,無法運行于之前的PHP版本。

7. 安裝php-phpunit-PHPUnit
PHPUnit是一個面向PHP程序員的測試框架,這是一個xUnit的體系結(jié)構(gòu)的單元測試框架。
復(fù)雜的項目,通過單元測試能夠快速排查bug,有效減少bug的產(chǎn)生。簡單的項目,使用php自帶的var_dump()、print_r()也能很方便的調(diào)試bug。

?8. 安裝php-pecl-xdebug
調(diào)用擴展,好像在服務(wù)器上沒啥用。

9. 安裝php-pecl-xhprof
xhprof 是一款Facebook工程師開發(fā)和維護的一款PHP性能分析、調(diào)試工具,相較于xdebug要更輕量,更節(jié)省資源,強烈推薦大家使用
