PHP passthru с цветным выводом
У меня есть скрипт, который запускает другие скрипты на основе либо по заданному расписанию, либо по требованию в зависимости от команды. Это позволяет управлять повседневными и трудоемкими задачами в одном месте, а также упрощает управление в целом. Эта настройка существует на двух серверах с (в основном) идентичной настройкой.
Один из работающих индексов использует PHP passthru()
функция. Результаты сохраняются в базе данных для последующего просмотра.
Код работает passthru()
является:
$result = [];
passthru(/usr/local/bin/wp plugin delete ' . $plugin . ' --path=' . $path, $result);
При запуске из командной строки в putty, вывод похож на:
Success: Deleted 'hello' plugin.
На обоих серверах Success:
зеленый. Однако при запуске на сервере 1 через задание цвета удаляются. При запуске на сервере 2 цветовые коды ANSI сохраняются и записываются следующим образом:
[32;1mSuccess:[0m Deleted 'hello' plugin.
Мне нужно удалить цветовые коды из второго результата, но я не могу понять, какой параметр в CentOS (или php.ini) посмотреть на это. Между этими двумя серверами есть что-то другое, но я не могу понять, что именно.
Версия PHP: 5.6.8 CentOS версия: 6.6
1 ответ
Как мы выяснили в комментариях, проблема лежит в файле конфигурацииwp-cli
, + Изменить color:true
в color:auto
на втором сервере.