我正在尝试通过php中的system()
发送一个字符串作为shell参数。
一切正常,直到我发送一个包含特殊字符的字符串,例如“Œ”。所以,当我发送这个字符串“ŒDucks”时,shell就会收到“Ducks”
我已经尝试转义它添加“/”,“\”,简单引号但不重要,我得到相同的结果
这是我的代码:
system('/usr/bin/perl /var/prof/info.pl'.' '.EscapeShellArg("ŒDucks") > /dev/null &');
感谢您的时间:)
答案 0 :(得分:1)
尝试:setlocale(LC_CTYPE, "en_US.UTF-8");
或任何奇怪的语言环境来自。