dongque1958 2015-05-18 21:59
浏览 82
已采纳

带有彩色输出的PHP passthru

I have a script that runs other scripts based either on a specified schedule or on demand depending on the command. This allows mundane and time consuming tasks to be managed in a central location as well as simplifying the management in general. This setup exists on two servers with a (mostly) identical setup.

One of the subscripts that is run uses PHP's passthru() function. The results are stored in a database for later viewing.

The code running passthru() is:

$result = []; passthru(/usr/local/bin/wp plugin delete ' . $plugin . ' --path=' . $path, $result);

When run from the command line in putty, the output is similar to:

Success: Deleted 'hello' plugin.

On both servers, Success: is green. However, when run on server 1 via the task, the colors are stripped out. When run on server 2, the ANSI color codes remain and are recorded as follows:

[32;1mSuccess:[0m Deleted 'hello' plugin.

I need to remove the color codes from the second result, but I can't figure out what setting in CentOS (or php.ini) to look at for this. There is something different between the two servers, but I am unable to figure out what.

PHP version: 5.6.8 CentOS version: 6.6

  • 写回答

1条回答 默认 最新

  • dongliuliu0385 2015-05-18 22:41
    关注

    As we figured out in comments the problem lays in the config file of wp-cli. Change color:true to color:auto on the second server.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案