您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么解決php中exec亂碼問題,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
php exec亂碼的解決辦法:1、執行“exec("python cmd.py",$str);”;2、通過“iconv("GBK", "UTF-8", $res);”方式轉換編碼即可。
本文操作環境:windows7系統、PHP7.1版、DELL G3電腦
php 填坑exec或shell_exec無法返回中文亂碼情況
原本想執行:
exec("python cmd.py",$str); var_dump($str);
在cmd.py文件輸出中含有中文,結果顯示的是下圖所示:
很多博主說可以通過設置預定編碼然后可以解決,比如先在執行命令前添加編碼后執行:
$locale='en_US.UTF-8'; setlocale(LC_ALL,$locale); putenv('LC_ALL='.$locale); exec("python cmd.py",$str); var_dump($str);
試了以后發現問題依然存在,并沒有效果。。后經過google良久后終于找到了解決方法,遂不敢獨留,貼出來分享。。
不廢話,直接上。。。
exec: exec("python cmd.py",$str); foreach($str as $res) { $str = iconv("GBK", "UTF-8", $res); } echo $str; shell_exec: $res = shell_exec("python cmd.py"); echo iconv("GBK", "UTF-8", $res);
上面exec和shell_exec返回均可顯示中文!
以上是“怎么解決php中exec亂碼問題”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。