Si has escrito el código de una aplicación de consola usando PHP es posible que desees resaltar algunos mensajes de error o advertencia. Para esto puedes utilizar algunos códigos para cambiar los colores de letras y de fondo.
Aquí hay un ejemplo de cómo imprimir un texto blanco sobre fondo rojo:
<?php print("\e[1;37;41mError: No hay conexion a la base de datos\e[0m"); ?>

El código anterior puede parecer bastante confuso, pero voy a explicarlo de forma que lo entiendas perfectamente y puedas utilizarlo sin ningún problema.
\e
Es un carácter de escape, se usa para decir que vamos a enviar un código de color, el código completo es este: \e[m
pero también tenemos que enviar los códigos para el color de letra y color de fondo respectivamente.
1;37
Representa el color blanco y 41
representa el color rojo, ambos colores van separados por un ;
y la cadena la finalizamos con \e[0m
para re inicializar los colores estándar.
Aquí hay una lista de los colores de letra:
Color | Codigo |
Negro | 0;30 |
Gris | 1;30 |
Rojo | 0;31 |
Rojo claro | 1;31 |
Verde | 0;32 |
Verde claro | 1;32 |
Cafe | 0;33 |
Amarillo | 1;33 |
Azul | 0;34 |
Celeste | 1;34 |
Magenta | 0;35 |
Magenta Claro | 1;35 |
Cyan | 0;36 |
Cyan Claro | 1;36 |
Gris claro | 0;37 |
Blanco | 1;37 |
Esta es la lista de los colores de fondo
Color | Codigo |
Negro | 40 |
Rojo | 41 |
Verde | 42 |
Amarillo | 43 |
Azul | 44 |
Magenta | 45 |
Cyan | 46 |
Gris claro | 47 |
Crea tu propia función para cambiar los colores
Ahora que está todo más claro puedes crear tu propia función y hacer todo más fácil, por ejemplo, imagina que necesitas resaltar solo dos tipos de mensajes: Errores y Advertencias, entonces, puedes crear una función como esta:
<?php /* Mostrar un mensaje de error */ function MostrarError($error) { print("\e[1;37;41m$error\e[0m"); } /* Mostrar un mensaje de advertencia */ function MostrarAdvertencia($mensaje) { print("\e[1;33m$mensaje\e[0m"); } MostrarError("No posee acceso para esta opción\n"); MostrarAdvertencia("Hay poco espacio en el disco"); ?>
