利用php一键生成网站多语言系统

今天周末了,外面下雨,所以还是写代码吧。

问题:最近有个系统要做多语言的,当然只是展示的时候切换语言包(简体中文、繁体中文、英文等),

这个系统包括前端页面展示和后台操作全部都用多语言模式,每次写代码都要给语言包新增语言文件,问题还是要翻译!!

解决方案:利用php抓取页面进行扣取文中的中文,然后将中文转换为拼音,利用翻译接口批量翻译扣取的汉字,

然后用yinpin替换原文件对于的汉字,最后生成需要的语言包。

经过多次调试,目前UTF-8版可以正常使用,其他编码需要转换一下或者自行添加功能。

目前放在GitHub上面,有兴趣的可以去看看哦,地址:BlangPack

使用:

header("content-type:text/html;charset=utf-8");
    error_reporting(E_ALL);//调试请打开报错,实际操作可以屏蔽!
    
    use BLangPack\BLangPack;
    require_once(__DIR__ . '/../autoload.php');
    set_time_limit(1800);//超时设置
    //两个目录都需要写权限,否则无法生成和替换
    $dir = __DIR__ . '/web/';//要生成语言包的目录
    $langpackdir = __DIR__ . '/lang/';//生成语言包存放目录
    $test = new BLangPack($dir,$langpackdir);
    $test->langpackfilename ='zh';//语言包文件名
    $test->extension ='php';//文件扩展名
    if($test->run()){
        echo "执行完毕";
    }else{
        echo "执行失败";
    }

图片效果:

替换前的文件:



替换后的原文件:



语言包详情:



评论/留言