Intereting Posts

Кодировка символов командной строки из PHP exec ()

Я пытаюсь передать текст UTF-8 в качестве аргумента в программу командной строки с использованием функции exec php и возникли проблемы. Я подозреваю, что это связано с проблемами кодирования символов.

Когда я вызываю locale charmap из командной строки, я получаю: UTF-8 .

Но когда я сделаю:

 <?php echo exec('locale charmap'); ?> 

я получил

ANSI_X3.4-1968

Как я могу это изменить? Это не то, что я хочу установить один раз – я буду работать с разными языками / кодировками, поэтому каждый вызов функции exec() может потребовать другой. Но даже знать, как настроить его на UTF-8 один раз, было бы полезно.

Related of "Кодировка символов командной строки из PHP exec ()"

Префикс команды с помощью 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

У вас должен быть установлен языковой стандарт.