首先查看系统对中文的支持 locale -a | grep zh_CN
zh_CN zh_CN.gb18030 zh_CN.gb2312 zh_CN.gbk zh_CN.utf8
vi ~/.bash_profile 文件末尾添加: export LANG="zh_CN.UTF-8" export LC_ALL="zh_CN.UTF-8" export LANG="en_US.UTF-8" export LC_ALL="en_US.UTF-8"
在php文件调用exec前设定环境变量 $locale='en_US.UTF-8'; // 或 $locale='zh_CN.UTF-8'; setlocale(LC_ALL,$locale); putenv('LC_ALL='.$locale);
$txt = "/home/admin/wwwroot/zhuanma/public/txttest.txt"; $cmd = "iconv -f gb2312 -t utf-8 ".$txt." -c -s -o test.odt";
var_dump($cmd); exec($cmd);
$txt2 = "/home/admin/wwwroot/zhuanma/public/test.odt"; $tmp = "/home/admin/wwwroot/zhuanma/public"; $set_charset = 'export LANG=en_US.UTF-8;'; $cmd2 = $set_charset." soffice --headless --convert-to pdf ".$txt2." --outdir ".$tmp; var_dump($cmd2);
exec($cmd2. " >> /home/admin/wwwroot/zhuanma/public/test.log 2>&1");
查看文件编码 file -i test.txt
查看环境变量
export -p
|
请发表评论