цвет текста echo php
PHP Echo text Color
How do I change the color of an echo message and center the message in the PHP I’ve written. The line I have is:
echo ‘Request has been sent. Please wait for my reply!’;
8 Answers 8
How about writing out some escape sequences?
Won’t work through browser though, only from console ;))
How about writing out some HTML tags and some CSS if you’re outputting this to the browser?
Won’t work from console though, only through browser.
And if you are using Command line on Windows, download a program ANSICON that enables console to accept color codes. ANSICON is available at https://github.com/adoxa/ansicon/releases
This is an old question, but no one responded to the question regarding centering text in a terminal.
If you want send ANSI color to console, get this tiny package,
this works for me every time try this.
since font is not supported in html5 you can do this
If it echoing out to a browser, you should use CSS. This would require also having the comment wrapped in an HTML tag. Something like:
This site is temporarily in read only mode and not accepting new answers.
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
site design / logo © 2021 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2021.10.1.2520
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Цветной man или как разукрасить вывод echo
Когда пишешь даже минимальный скриптик, часто используешь echo — подсказки.
Согласитесь «цветной man» ведь намного приятнее читать, так почему бы не раскрасить вывод echo?
это достаточно легко.
Итак…
Задача:
Раскрасить текстовую строку выводимую на экран через команду echo
т.е. раскрасить эти самые подсказки
Что нужно:
1) man echo
www.opennet.ru/man.shtml?topic=echo&category=1
Из него нам пригодится точно
2) Хорошая статья с примерами «Управление консолью Linux» RUS
c-reaction.net/content/204
Для начала одним глазом хотябы посмотрим на man echo rus, а потом рассмотрим как использовать цвет
www.opennet.ru/man.shtml?topic=echo&category=1
Переходим к Управлению цветом:
tput sgr0 Возврат цвета в «нормальное» состояние
\033[22m установить нормальную интенсивность
\033[24m отменить подчеркивание
\033[25m отменить мигание
\033[27m отменить реверсию
\033[30 чёрный цвет знаков
\033[31 красный цвет знаков
\033[32 зелёный цвет знаков
\033[33 желтый цвет знаков
\033[34 синий цвет знаков
\033[35 фиолетовый цвет знаков
\033[36 цвет морской волны знаков
\033[37 серый цвет знаков
\033[40 чёрный цвет фона
\033[41 красный цвет фона
\033[42 зелёный цвет фона
\033[43 желтый цвет фона
\033[44 синий цвет фона
\033[45 фиолетовый цвет фона
\033[46 цвет морской волны фона
\033[47 серый цвет фона
Таблица цветов и фонов:
black 30 40 \033[30m \033[40m
red 31 41 \033[31m \033[41m
green 32 42 \033[32m \033[42m
yellow 33 43 \033[33m \033[43m
blue 34 44 \033[34m \033[44m
magenta 35 45 \033[35m \033[45m
cyan 36 46 \033[36m \033[46m
grey 37 47 \033[37m \033[47m
Допускается объединение этих управляющих последовательностей.
Например \033[1m\033[5m\033[36m может быть заменено эквивалентной последовательностью \033[1;5;36m.
Для удобства пользвания можно цвет и доп. свойства назначить переменным:
Ну и напоследок — один хороший пример со всеми плюшками:
#!/bin/sh
# echo подсветка
# echo color
# Скрипт выводит на экран список меню
clear # Очистка экрана
#Памятка, Таблица цветов и фонов
#Цвет код код фона
#black 30 40 \033[30m \033[40m
#red 31 41 \033[31m \033[41m
#green 32 42 \033[32m \033[42m
#yellow 33 43 \033[33m \033[43m
#blue 34 44 \033[34m \033[44m
#magenta 35 45 \033[35m \033[45m
#cyan 36 46 \033[36m \033[46m
#white 37 47 \033[37m \033[47m
tput sgr0 # Возврат цвета в «нормальное» состояние
ps: Подскажите, пожалуйста, в какой блог лучше опубликовать?
UPD1: перенес в Linux для всех, т.к. это наиболее близкий блог по тематике, как мне кажется.
UPD2: Спасибо aco за картинку, кратко и наглядно =)
Цветной вывод текста командой echo в Bash
В предыдущей статье были рассмотрены команды echo для форматирования вывода с помощью специальных команд в Bash. В этой статье рассмотрим, как с помощью других команд поменять цвет выводимого текста и фона под ним. На этом, я думаю, знакомство с командой echo можно будет закончить, хотя у неё есть ещё интересные свойства при работе с файловой системой, но этот вопрос можно отложить до того момента, когда это действительно понадобится.
Как вывести текст разными цветами командой echo в Bash
Как вывести текст разным цветом фона под ним командой echo в Bash
Таким образом можно поменять не только цвет выводимого текста, но и цвет фона.
Пример текста разного цвета и фона под ним в Bash
Для понимания того, как это всё происходит, можно проиллюстрировать всё описанное выше таким кодом:
Если вывести приведённую выше команду, то результат будет такой:
Резюме
Таким образом были рассмотрены все варианты форматирования вывода команды echo в Bash, а также примеры работы этого форматирования.
Про то, как облегчить работу по выводу цветного текста, читай дальше в статье «Вывод цветного текста в BASH».
Видео о том, как раскрасить BASH. Коды цветов шрифта и цвета фона для BASH скриптов.
Класс PHP для вывода в консоль цветного текста
Делал для себя скрипт для деплоя сайта на продакшен. Для чего нужно было выводить на экран что происходит. И чтобы было нагляднее решил выводить в цвете. Однако не смог найти что-то подходящее. Максимум библиотека выводила цветной текст, но не поддерживала отступы. Поэтому сделал свою библиотеку для этого. Возможно кому-то будет полезно. Небольшая (но функциональная) библиотека для вывода на консоль цветного текста с поддержкой отступов в таком вот виде
Установка
Для установки можно воспользоваться composer
Использование
Список всех поддерживаемых цветов. Имена колонок — цвета фона, имена строк — цвета текста.
Вывод цветного текста
Отступы
Для работы с отступами служит функция indent(значение отступа[,абсолютное значение]) — если указан второй параметр и он = true, то отступ абсолютный. Иначе отступ относительный. Для получения текущего отступа нужно вызвать функцию indent() без параметров.
вывод:
функция indent применяется к выводимой СТРОКЕ и значение будет меняться до вызова функции enter(). Т.е. вот этот код выведет строку с отступом 3
Стили
Можно указать стили. По умолчанию задан стиль ошибок «error»
вывод:
Логирование
Имеются специальные функции для контроля логирования
Значения выводятся на экран с помощью функции write() только в случае если текущий уровень логирования меньше-равен глобальноному уровню логирования.
Синтаксический сахар
Чтобы не писать color(‘red’)->bgcolor(‘green’) можно писать в коротком виде
Цвет фона можно задавать функцией без подчеркивания. Однако оно визуально отделяет цвет от префикса и, на мой взгляд, весьма удобна.
upd: раз уж мне указали на ошибку в имени функции ident вместо indent, то я её исправил чтобы не смущать тех, кто знает английский хорошо 🙂
Цвет текста echo php
(PHP 4, PHP 5, PHP 7, PHP 8)
echo — Выводит одну или более строк
Описание
Выводит одно или несколько выражений без дополнительных символов новой строки или пробелов.
echo имеет также краткую форму, представляющую собой знак равенства, следующий непосредственно за открывающим тегом. Этот сокращённый синтаксис работает даже с отключённым параметром конфигурации short_open_tag.
Единственное отличие от print в том, что echo принимает несколько аргументов и не имеет возвращаемого значения.
Список параметров
Возвращаемые значения
Функция не возвращает значения после выполнения.
Примеры
Пример #1 Примеры использования echo
echo «echo не требует скобок.» ;
// Новая строка или пробел не добавляются; пример ниже выведет «приветмир» в одну строку
echo «привет» ;
echo «мир» ;
echo «Эта строка занимает
несколько строк. Новые строки также
будут выведены» ;
echo «Эта строка занимает\nнесколько строк. Новые строки также\nбудут выведены.» ;
// Нестроковые выражения приводятся к строковым, даже если используется declare(strict_types=1)
echo 6 * 7 ; // 42
Примечания
Замечание: Поскольку это языковая конструкция, а не функция, она не может вызываться при помощи переменных функций.
Замечание: Использование с круглыми скобками
echo «привет» ;
// выведет «привет»
echo( «привет» );
// также выведет «привет», потому чтл («привет») является корректным выражением
echo( 1 + 2 ) * 3 ;
// выведет «9»; круглые скобки приводят к тому, что сначала вычисляется 1+2, а затем 3*3
// оператор echo видит всё выражение как один аргумент
echo( «привет» ), ( » мир» );
// выведет «привет мир»; круглые скобки являются частью каждого выражения
Передача нескольких аргументов в echo может избежать осложнений, связанных с приоритетом оператора конкатенации в PHP. Например, оператор конкатенации имеет более высокий приоритет, чем тернарный оператор, а до PHP 8.0.0 имел тот же приоритет, что и сложение и вычитание:
Если передано несколько аргументов, скобки не требуются для обеспечения приоритета, потому что каждое выражение является отдельным:
Смотрите также
User Contributed Notes 3 notes
Passing multiple parameters to echo using commas (‘,’)is not exactly identical to using the concatenation operator (‘.’). There are two notable differences.
First, concatenation operators have much higher precedence. Referring to http://php.net/operators.precedence, there are many operators with lower precedence than concatenation, so it is a good idea to use the multi-argument form instead of passing concatenated strings.
It would become a confusing bug for a script that uses blocking functions like sleep() as parameters: