Shr*_*dse 5 php command-line bash lubuntu
假设我有一个php文件,我想为基于控制台的应用程序更改输出的文本颜色...
<?php
$prompt = "What Is Your Name: ";
echo $prompt;
$answer = "You Entered: " . rtrim( fgets( STDIN ));
echo $answer;
?>
Run Code Online (Sandbox Code Playgroud)
我想更改$answer.
是否可以?如果是,我该怎么做?
这当然可以使用ANSI 转义码:
<?php
echo "\033[31m some colored text \033[0m some white text \n";
?>
Run Code Online (Sandbox Code Playgroud)
将输出红色的“一些彩色文本”和白色的“一些白色文本”(除非您为终端选择了不同的默认颜色)。
字符\033表示转义码的开始。[31m是红色。[0m表示编码片段的结束。如需更多颜色,请参见此处。
对于其他效果,例如粗体:
\033[1m bold text \033[0m
见第一个链接。您可以通过执行以下操作在命令行上尝试这些代码:
echo -e "\033[1m bold text \033[0m"
Run Code Online (Sandbox Code Playgroud)
^[38;2;<red>;<green>;<blue>m^[48;2;<red>;<green>;<blue>m<red> <green> <blue>范围从 0 到 255(含)。^[0m将输出返回到默认值。请参阅 RGB 颜色代码表
这是修改后的脚本,用于生成彩色输出。
<?php
$prompt = "What Is Your Name: ";
echo $prompt;
$answer = rtrim( fgets( STDIN ));
echo "\033[38;2;0;102;0m You \033[38;2;255;0;255m Entered: \033[38;2;255;255;0m $answer \033[0m \n";
?>
Run Code Online (Sandbox Code Playgroud)
上述脚本的示例输出:
| 归档时间: |
|
| 查看次数: |
3842 次 |
| 最近记录: |