我尝试将UTF-8文本作为参数传递给使用php的命令行程序 exec
exec
当我打电话的时候 locale charmap UTF-8 .
locale charmap
UTF-8
<?php echo exec('locale charmap'); ?>
我明白了
ANSI_X3.4-1968
我怎样才能改变这个?这不是我想设置一次的东西——我可能会使用不同的语言/编码,所以每次调用 exec() 可能需要另一个。但即使知道如何设定 UTF-8型
exec()
UTF-8型
在命令前面加上 LANG = <language>.UTF8 .
LANG = <language>.UTF8
例子:
$ php -r "echo exec('LANG=\"en_US.UTF8\" locale charmap');" UTF-8 $ php -r "echo exec('LANG=\"en_US.iso88591\" locale charmap'); ISO-8859-1