Документация для разработчиков
Темная тема

TxtToHTML

Описание и параметры

string
TxtToHTML(
	string text,
	bool make_url = true,
	int max_string = 0,
	string quote_tag_enabled = "N",
	string not_convert_amp = "Y",
	string code_tag_enabled = "N",
	string biu_tags_enabled = "N",
	string quote_table_class = "quotetable",
	string quote_head_class = "tdquotehead",
	string quote_body_class = "tdquote",
	string code_table_class = "codetable",
	string code_head_class = "tdcodehead",
	string code_body_class = "tdcodebody",
	string code_textarea_class = "codetextarea",
	string link_class = "txttohtmllink",
	array  event = array()
);

Конвертирует обычный текст в HTML-код форматирующий исходный текст.

Параметры функции

ПараметрОписание
text Исходный текст.
make_url Если значение "true", то - преобразовывать подстроки, которые представляют собой web-адреса (http://... или mailto:), в HTML ссылки.
Необязательный параметр. По умолчанию - "true".
max_string Максимальная длина слова. Все слова длиннее этого параметра разбиваются пробелами. Значение "0" - означает "не разбивать слова".
Необязательный параметр. По умолчанию - "0".
quote_tag_enabled Если значение - "Y", то спец. тег <QUOTE>...</QUOTE> (цитата) будет преобразован в HTML таблицу (визуально цитата будет обрамлена рамкой).
Необязательный параметр. По умолчанию - "N".
not_convert_amp Если значение - "Y", то "&" не будет преобразован "&amp;".
Необязательный параметр. По умолчанию - "Y".
code_tag_enabled Если значение - "Y", то спец. тег <CODE>...</CODE> (код) будет преобразован в HTML элемент textarea, в свою очередь обрамленный таблицей (визуально код будет обрамлен рамкой и выведен в textarea).
Необязательный параметр. По умолчанию - "N".
biu_tags_enabled Если значение - "Y", то спец. теги <b>...</b>, <i>...</i>, <u>...</u> будут преобразованы в соответствующие им HTML теги.
quote_table_class CSS класс на таблицу цитаты (<quote>).
Необязательный параметр. По умолчанию - "quotetable".
quote_head_class CSS класс на первую ячейку (TD) таблицы цитаты (<quote>).
Необязательный параметр. По умолчанию - "tdquotehead".
quote_body_class CSS класс на вторую ячейку (TD) таблицы цитаты (<quote>):
<table class="quote_table_class">
	<tr>
		<td class="quote_head_class"> ... 
		</td>
	</tr>
	<tr>
		<td class="quote_body_class"> ... 
		</td>
	</tr>
</table>
Необязательный параметр. По умолчанию - "tdquote".
code_table_class CSS класс на таблицу кода (<code>).
Необязательный параметр. По умолчанию - "codetable".
code_head_class CSS класс на первую TD таблицы кода (<code>).
Необязательный параметр. По умолчанию - "tdcodehead".
code_body_class CSS класс на вторую TD таблицы кода (<code>).
Необязательный параметр. По умолчанию - "tdcodebody".
code_textarea_class CSS класс на textarea в таблице кода (<code>):
<table class="code_table_class">
	<tr>
		<td class="code_head_class"> ... </td>
	</tr>
	<tr>
		<td class="code_body_class">
			<textarea class="code_textarea_class"> ... 
			</textarea>
		</td>
	</tr>
</table>
Необязательный параметр. По умолчанию - "codetextarea".
link_class CSS класс на ссылках:
<a class="link_class"> ... </a>
Необязательный параметр. По умолчанию - "txttohtmllink".
event В данном массиве можно задать идентификаторы типа события, которое будет фиксироваться при клике на HTML ссылке. Параметр работает, только если make_url == true.

Допустимы следующие ключи данного массива:
  • EVENT1 - идентификатор event1 типа события;
  • EVENT2 - идентификатор event2 типа события;
  • EVENT3 - идентификатор event3 типа события;
  • SCRIPT - путь относительно корня к скрипту фиксирующему событие и осуществляющему редирект.

Смотрите также

Пример работы функции


Вызов:

$text = "
текст текст текст текст 
текст текст текст текст 
длиннноесловодлиннноеслово
<code>код код код</code>
<quote>цитата цитата цитата</quote>
<b>жирный текст</b>
<i>курсив</i>
<u>подчёркнутый</u>
ссылка: http://www.1c-bitrix.ru
email: support@1c-bitrix.ru
";
echo TxtToHTML(
	$text, 
	true, 
	20, 
	"Y", 
	"N", 
	"Y", 
	"Y", 
	"quotetable", 
	"tdquotehead", 
	"tdquote",
	"codetable",
	"tdcodehead",
	"tdcodebody",
	"codetextarea"
);


Результат:

текст текст текст текст <br>
текст текст текст текст <br>
длиннноесловодлиннн оеслово<br>
<table class='codetable'>
	<tr>
		<td class='tdcodehead'>Код</td>
	</tr>
	<tr>
		<td class='tdcodebody'>
			<textarea class='codetextarea' contentEditable=false cols=60 rows=15 wrap=virtual>код код код</textarea>
		</td>
	</tr>
</table><br>
<table class='quotetable' width='95%' border='0' cellpadding='3' cellspacing='1'>
	<tr>
		<td class='tdquotehead'>Цитата</td>
	</tr>
	<tr>
		<td class='tdquote'>цитата цитата цитата</td>
	</tr>
</table><br>
<b>жирный текст</b><br>
<i>курсив</i><br>
<u>подчёркнутый</u><br>
ссылка: <a class="txttohtmllink" href="http://www.1c-bitrix.ru">http://www.1c-bitrix.ru</a><br>
email: <a class="txttohtmllink" href="mailto:support@1c-bitrix.ru">support@1c-bitrix.ru</a>


CSS (его предварительно необходимо подключить до вызова функции):

.quotetable, .codetable {width:90%}

.quotetable .tdquotehead, 
.quotetable .tdquote, 
.codetable  .tdcodehead,
.codetable  .tdcodebody,
.codetextarea {padding: 2px; font-family: Arial; font-size:12px; color:#000000}

.quotetable .tdquotehead, 
.codetable  .tdcodehead {font-weight:bold}

.quotetable .tdquote, 
.codetable  .tdcodebody {border: 1px solid Black}

.quotetable .tdquotehead, 
.quotetable .tdquote, 
.codetable  .tdcodehead,
.codetable  .tdcodebody,
.codetextarea {background-color: #FFFFFF}

.codetextarea {
	border: solid 0px; 
	width: 100%;
	overflow: auto;
	scrollbar-shadow-color: #000000; 
	scrollbar-arrow-color:  #000000; 
	scrollbar-base-color:   #000000
}

.codetextarea {
	scrollbar-face-color:       #FFFFFF; 
	scrollbar-highlight-color:  #FFFFFF; 
	scrollbar-track-color:      #FFFFFF; 
	scrollbar-darkshadow-color: #FFFFFF
}


Визуальное представление (то, что мы увидим на экране монитора):

текст текст текст текст
текст текст текст текст
длиннноесловодлиннн оеслово
Код.

Цитата.
цитата цитата цитата.

жирный текст
курсив
подчёркнутый
ссылка: http://www.1c-bitrix.ru
email: support@1c-bitrix.ru


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх