系统环境: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 繁体(台湾正体标准)到简体并转换为中国大陆常用词汇
自己在宝塔面板里测试安装成功,记录一下宝塔面板安装遇到的问题。
暂无评论内容