微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Php exec编码

当我从控制台执行此命令时“发送XXXXXXXXX’śćźłóśadad’”一切正常.但是当我用exec执行它时(“sendsmsXXXXXXXXX’śćźłóśadad’”); msg的主体没有抛光字母. Debian控制台是UTF-8,PHP文件是UTF-8.当我从cli执行这个PHP文件时一切正常,但问题是我从浏览器运行它(同一个文件).为什么?怎么解决

解决方法:

通过CLI界面运行脚本时,子进程继承其父进程的环境,该环境包含变量LANG,用于将字节的编码传递给基础C运行时.

可能当你通过mod_PHP执行你的程序时,没有设置LANG.所以你可以自己配置它:

<?PHP
putenv('LANG=en_US.UTF-8');
exec("sendsms 888888888 cosśźćłó"); 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐