Centos7下手動安裝php7.4的intl擴展

PHP intl是國際化擴展,是ICU庫的一個包裝器。所以在安裝PHP intl擴充要前要先安裝ICU庫。教你如何手動安裝PHP intl擴充功能。

PHP 是國際化擴展,是ICU庫的包裝器。所以在安裝PHP intl擴充要前要先安裝ICU庫。
什麼是ICU?
ICU是成熟的,廣泛使用的C / C ++和Java庫集,可為軟體應用程式提供Unicode和全球化支援。 ICU具有廣泛的可移植性,可以在所有平台上以及C / C ++和Java軟體之間為應用程式提供相同的結果。
ICU是根據非限制性開放原始碼許可證發行的,該許可證適用於商業軟體以及其他開放原始碼或自由軟體。

以下是ICU提供的服務的一些要點:

代碼頁轉換:在Unicode和幾乎任何其他字元集或編碼之間來回轉換文字資料。 ICU的轉換表基於IBM數十年來收集的字符集數據,並且在任何地方都是最完整的。

排序規則:根據特定語言,地區或國家/地區的約定和標準比較字串。 ICU的歸類是基於Unicode歸類演算法以及通用語言環境資料儲存庫(特定於此類資料的全面來源)中特定於語言環境的比較規則。

格式設定:根據所選區域設定的格式設定數字,日期,時間和貨幣金額的格式。這包括將月份和日期的名稱翻譯成所選的語言,選擇適當的縮寫,正確地訂購欄位等。此數據也來自通用語言環境資料儲存庫。

時間計算:除了傳統的公曆之外,還提供多種類型的日曆。提供了一套完整的時區計算API。

Unicode支援:ICU密切追蹤Unicode標準,可輕鬆存取所有的許多Unicode字元屬性,Unicode規範化,大小寫轉換和其他基本操作由指定的Unicode標準。

正規表示式:ICU的正規表示式完全支援Unicode,同時提供非常有競爭力的效能。

Bidi:支援處理包含從左到右(英語)和從右到左(阿拉伯語或希伯來語)資料的混合文字。

文字邊界:在文字範圍內找到單詞,句子,段落的位置,或確定顯示文字時適合換行的位置。
以及更多。 有關詳細信息,請參閱《 ICU使用者指南》。

首先下載ICU的軟體套件。最新版先造訪ICU官方網站,網址是http://site.icu-project.org/
ICU的版本下載可以在github上下載,github上依照系統版本下載ICU最新版,現在最新版是66.1,主要更新變更是Unicode 13和CLDR 36.1。新的Q1版本,用於Unicode 13的低風險整合。

wget https://github.com/unicode-org/icu/releases/download/release-66-1/icu4c-66_1-src.tgz

解壓縮軟體包

tar -zxf icu4c-66_1-src.tgz

安裝ICU到伺服器上,安裝目錄設定/usr/local/icu

cd icu/source ./configure --prefix=/usr/local/icu make && make install

查看新安裝的ICU的版本

yum info icu

發現是50.2,在官網查了一下,CLDR 22.1,Unicode 6.2,序數支持,中文和日文的基於字典的中斷迭代器。
到這裡ICU庫就安裝完了,下載開始下一步,在PHP7安裝套件下安裝intl擴充。
先安裝依賴軟體包,如果之前沒有配置過環境的,這裡需要新安裝一下。之前配置過的也需要安裝檢測一下,以免漏裝!

yum -y install make gcc-c++ gd libxml2-devel libjpeg-devel libpng-devel net-snmp-devel curl-devel libxslt-devel pcre-devel libjpeg libpng libxml2 libcurl4-opensurlo-dev freetype-devel unixODBC libxslt


依賴套件安裝之後,開始從PHP7安裝套件內安裝擴充功能。
如果伺服器上沒有php7的安裝包需要重新下載

wget https://www.php.net/distributions/php-7.4.3.tar.gz

進入PHP7安裝目錄的擴充存放目錄,編譯設定一下intl擴充。

cd php-7.4.3/ext/intl phpize ./configure make && make install


intl擴充已經安裝成功了!

cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/

ls指令查看目錄,intl.so已經產生了,將下列程式碼貼到PHP7的php.ini檔案裡重新啟動一下PHP服務就可以了。

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/intl.so

VI編輯php.ini,隨便找一個空白行,按I啟動編輯模式,貼上上面的內容後,按ESC取消編輯模式,輸入:wq指令儲存檔退出VI編輯。

vim /usr/local/php/etc/php.ini

在系統重啟啟動一下PHP,看看PHP探針頁面上有沒有intl擴充。

恭喜你,你已經成功安裝成功intl擴充功能了!

1/5 - (1 vote)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *