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

系统环境:CentOs7.9(Debian12) php8.1 Nginx

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

centos:

yum install doxygen

debian:

apt install doxygen

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

第二步安装opencc:

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

如果运行过程提示cmake版本过低,自行升级即可!

安装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/81/bin/php-config
#make test

/www/server/php/81/bin/php-config (找到你对应的php路径,我这里安装的是8.1版本,如果你默认不是的话,修改到你php路径即可)

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

提示错误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/opencc4php
make
make install

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

Installing shared extensions:     /www/server/php/81/lib/php/extensions/no-debug-non-zts-20210902/

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

[openCC]
extension_dir =/www/server/php/81/lib/php/extensions/no-debug-non-zts-20210902/
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 繁体(台湾正体标准)到简体并转换为中国大陆常用词汇

自己在宝塔面板里测试安装成功,记录一下宝塔面板安装遇到的问题。

© 版权声明
THE END
喜欢就支持一下吧
点赞12赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容