Intereting Posts
PHP: mysql_fetch_array () ожидает, что параметр 1 будет ресурсом, boolean given Каков стандартный способ управления несколькими аналогичными входами в форме HTML / PHP? Почему я продолжаю получать сообщение об ошибке php с непредвиденным «)» в инструкции FOR? Отправка сообщений с php на java Как поместить строку в массив, разделить на новую строку? интерактивное управление программой с использованием php как загрузить текстовый файл с помощью dfferent php script process Как наложить HTML сгенерированный PDF поверх существующего PDF? Plesk 12 на CentOS 6 не работает драйверы PDO ODBC / DbLib Как написать несколько операторов select с несколькими условиями в одном запросе? Создание и сохранение XML-файла на сервере с использованием PHP PHP: запись простой функции removeEmoji Разработка Facebook – логин Нужно ли объявлять массив PHP перед использованием? Оператор добавления сокращений PHP – неопределенное смещение

Цвет файла журнала PHP

Я пишу класс файла журнала PHP, но я хочу добавить цвет в строку, записанную в файл.

Проблема, с которой я столкнулась, – это цвет, изменяющий цвет терминала, и я хочу, чтобы изменить цвет строки, записанной только в файл журнала.

class logClass extends Singleton { private function checkDate() { return date("onSj"); } public function logNotice($str) { $this->write($str, "\033[33m"); } public function write($string, $color) { $fileName = $this->checkDate(); $handle = fopen('error.log', 'a'); fwrite($handle, "$color" . date("Ymd H:i:s") . $string . "\n"); fclose($handle); } } 

Вы должны добавить последовательность цветовых меток конца. Например: sprintf("\033[33m%s\033[0m", $text)

Вот список цветовых кодов, взятых из https://github.com/kevinlebrun/colors.php

 $colorFormats = array( // styles // italic and blink may not work depending of your terminal 'bold' => "\033[1m%s\033[0m", 'dark' => "\033[2m%s\033[0m", 'italic' => "\033[3m%s\033[0m", 'underline' => "\033[4m%s\033[0m", 'blink' => "\033[5m%s\033[0m", 'reverse' => "\033[7m%s\033[0m", 'concealed' => "\033[8m%s\033[0m", // foreground colors 'black' => "\033[30m%s\033[0m", 'red' => "\033[31m%s\033[0m", 'green' => "\033[32m%s\033[0m", 'yellow' => "\033[33m%s\033[0m", 'blue' => "\033[34m%s\033[0m", 'magenta' => "\033[35m%s\033[0m", 'cyan' => "\033[36m%s\033[0m", 'white' => "\033[37m%s\033[0m", // background colors 'bg_black' => "\033[40m%s\033[0m", 'bg_red' => "\033[41m%s\033[0m", 'bg_green' => "\033[42m%s\033[0m", 'bg_yellow' => "\033[43m%s\033[0m", 'bg_blue' => "\033[44m%s\033[0m", 'bg_magenta' => "\033[45m%s\033[0m", 'bg_cyan' => "\033[46m%s\033[0m", 'bg_white' => "\033[47m%s\033[0m", ); 

Пример использования:

sprintf($colorFormats['green'], $someText)