有些時候因為需求的關係,會需要簡體與繁體中文的轉換,而大部分都是直接進行編碼轉換,可是有些詞彙在中國大陸、臺灣與香港的用法並不相同,本篇介紹一個Open Source可以處理這種詞類的轉換:OpenCC。
(OpenCC可以在不同程式語言上使用,可以參考repo中的說明,此篇以PHP作範例)
Library名稱: OpenCC
GitHub repo: https://github.com/BYVoid/OpenCC
OpenCC Online (在線轉換) http://opencc.byvoid.com/
示範環境(參考:[教學] 安裝LEMP(Linux+Nginx+Mysql+PHP)環境):
作業系統 Ubuntu 16.04
PHP版本 PHP 7.0.22
網頁伺服器 Nginx
首先安裝一些需要使用到的環境
環境需要先安裝git make cmake gcc g++ doxygen python
sudo apt-get update sudo apt-get install git make cmake gcc g++ doxygen python
接下來是將open cc這個專案clone下來
git clone https://github.com/BYVoid/OpenCC.git cd OpenCC sudo make sudo make install
然後這邊以PHP做範例 所以安裝opencc4php
sudo apt-get install php7.0-dev git clone https://github.com/NauxLiu/opencc4php.git cd opencc4php phpize ./configure make make test sudo make install
接下來會顯示類似下面的訊息表示安裝完成 (依據版本日期會不同)
Installing shared extensions: /usr/lib/php/20151012/
然後需要到mods-available目錄下建立一個 opencc.ini的檔案
cd /etc/php/7.0/mods-available
修改內容
sudo nano opencc.ini
內容為:
; configuration for php opencc module ; priority=20 extension=opencc.so
儲存完畢輸入以下指令加上mod
sudo phpenmod opencc
最後重新啟動php-fpm跟nginx
sudo service nginx restart sudo systemctl restart php7.0-fpm
然後看php_info() 如果有以下訊息 就表示安裝成功
接著測試是否能如預期運作
開啟一個php檔案 內容程式碼為:
<?php $od = opencc_open("s2twp.json"); $text = opencc_convert("简体中文测试", $od); echo $text; opencc_close($od);
如果出現以下訊息表示安裝成功
簡體中文測試