宝塔面板安装opencc中文简繁转换工具和opencc4php扩展

系统环境:CentOs7.0 php7.0 Nginx

第一步安装一个需要用到的文档组件:

# yum install doxygen

cmake和git这两个组件宝塔默认已经安装了,没有的话安装一下即可

第二步安装opencc

# cd  /usr/local
# git clone https://github.com/BYVoid/OpenCC.git
# cd OpenCC/
# make
# sudo make install

安装opencc基本不会报错,如有报错,可能是组件缺失,请根据提示安装相应组件即可.

第三步安装opencc4php扩展(opencc4php是OpenCC的PHP扩展,能很智能的完成简繁体转换)

# cd /usr/local
# git clone https://github.com/NauxLiu/opencc4php.git
# cd opencc4php
# phpize
# ./configure --with-opencc=/usr/local/OpenCC --with-php-config=/www/server/php/70/bin/php-config (找到你对应的php路径,我这里安装的是7.0版本,如果你默认不是的话,修改到你php路径即可)
#make test

这一步可能出现的错误如下:

提示错误1:

The test-suite requires that proc_open() is available

后台编辑php.ini配置文件, 搜索disable_functions,去掉proc_open, 或者在禁用函数那直接删除

提示错误2:

PHP Warning: shell_exec() has been disabled for security reasons in /usr/local/opencc4php/run-tests.php on line 295

同上一样,去掉shell_exec

以上两步修改后重启php,宝塔里貌似修改后默认就生效了, 没生效的话需要重启php服务

提示错误3:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/opencc4php/modules/opencc.so'

依次执行下面命令,安装默认路径下面的共享库

# cd /
# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
# echo "/usr/local/opencc4php/modules" >> /etc/ld.so.conf
# ldconfig

上面错误解决完毕后接下来再次进入opencc4php

# cd /usr/local
# cd opencc4php
# make
# make install

命令行显示下面这个后,复制下面的路径

Installing shared extensions:     /www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012/

最后把刚刚复制的路径替换下面的extension_dir路径(因为php版本不同路径不一样)

[openCC]
extension_dir =/www/server/php/70/lib/php/extensions/no-debug-non-zts-20151012/
extension=opencc.so

最后再把上面这段代码复制粘贴到php.ini配置文件最后面,保存。

然后在版本管理下方有个phpinfo(或者直接输出一下phpinfo)测试是否已经成功安装,ctrl+f4查找opencc,查找成功则表示已经安装成功并启动生效了.

demo示例,非常智能人性化,根据台湾习惯转换,而不是机械转换

<?php 
$od = opencc_open("s2twp.json"); //传入配置文件名
$text = opencc_convert("联系方式", $od);
echo $text;//聯絡方式
opencc_close($od);
?>

//可用函数

opencc_open(string ConfigName) ConfigName:配置文件名,成功返回资源对象,失败返回false
opencc_close(resource ob) 关闭资源对象,成功返回true,失败返回false. 成功后od会置为NULL
opencc_error() 返回最后一条错误信息,有错误信息返回String,无错误返回false
opencc_convert(string str, resource od) str:要转换的字符串(UTF-8),od:opencc资源对象

//可用配置文件

 s2t.json 简体到繁体
 t2s.json 繁体到简体
 s2tw.json 简体到台湾正体
 tw2s.json 台湾正体到简体
 s2hk.json 简体到香港繁体(香港小学学习字词表标准)
 hk2s.json 香港繁体(香港小学学习字词表标准)到简体
 s2twp.json 简体到繁体(台湾正体标准)并转换为台湾常用词汇
 tw2sp.json 繁体(台湾正体标准)到简体并转换为中国大陆常用词汇

参考自阳’blog, 然后自己在宝塔面板里测试安装成功,记录一些宝塔面板安装遇到的问题。