Skip to content

Instantly share code, notes, and snippets.

@jtarleton
Created December 7, 2012 04:36
Show Gist options
  • Save jtarleton/4230792 to your computer and use it in GitHub Desktop.
Save jtarleton/4230792 to your computer and use it in GitHub Desktop.
Static methods for colors in bash
<?php
class ColorCLI
{
static $foreground_colors = array(
'black' => '0;30', 'dark_gray' => '1;30',
'blue' => '0;34', 'light_blue' => '1;34',
'green' => '0;32', 'light_green' => '1;32',
'cyan' => '0;36', 'light_cyan' => '1;36',
'red' => '0;31', 'light_red' => '1;31',
'purple' => '0;35', 'light_purple' => '1;35',
'brown' => '0;33', 'yellow' => '1;33',
'light_gray' => '0;37', 'white' => '1;37',
);
static $background_colors = array(
'black' => '40', 'red' => '41',
'green' => '42', 'yellow' => '43',
'blue' => '44', 'magenta' => '45',
'cyan' => '46', 'light_gray' => '47',
);
// Returns colored string
public static function getColoredString($string, $foreground_color = null, $background_color = null) {
$colored_string = "";
// Check if given foreground color found
if ( isset(self::$foreground_colors[$foreground_color]) ) {
$colored_string .= "\033[" . self::$foreground_colors[$foreground_color] . "m";
}
// Check if given background color found
if ( isset(self::$background_colors[$background_color]) ) {
$colored_string .= "\033[" . self::$background_colors[$background_color] . "m";
}
// Add string and end coloring
$colored_string .= $string . "\033[0m";
return $colored_string;
}
// Returns all foreground color names
public static function getForegroundColors() {
return array_keys(self::$foreground_colors);
}
// Returns all background color names
public static function getBackgroundColors() {
return array_keys(self::$background_colors);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment