Неправильно добавляются переводы строк
Я хочу, чтобы после [list] не ставился \n, а начинался [*] и после [/list] не ставился \n, ну или <br>, а то получается, что лишние строчки пропускаются.
Но мне надо например, что если я пишу без bbcode, то всё нормально отображалось, то есть, как написал, так и выглядит.
Как дела?
Нормально.
И в общем у меня есть такая функция:
function parse_content ( $s ) {
$res = str_replace ( "<", "<", $s );
$res = str_replace ( ">", ">", $res );
$res = str_replace("\\r", "\r", $res);
$res = str_replace("\\t", "\t", $res);
$res = str_replace("'", "'", $res );
$res = preg_replace( "/\[(code)=([a-z+]*)\][\n]?/i", "<pre><code class=\"$2\" id=\"code\">", $ res );
$res = str_replace("\\n", "\n", $res);
$res = str_replace ( "[/code]", "</code></pre>", $res );
$res = preg_replace ( "/\[([a-z]|[\*]{1})*\][\n]/i", "[$1]", $res );
$res = preg_replace ( "/\[\/([a-z]|[\*]{1})*\][\n]/i", "[/$1]", $res );
$res = str_replace ( "\n", "<br>", $res );
$bbcode = new ChrisKonnertz\BBCode\BBCode();
$rendered = $bbcode->render ( $res );
return $rendered;
}
Я в textarea пишу такой текст.
Привет. Как дела?
Нормально.
[list]
[*] helo
[*] priv
[/list]
это код.
[code=c++]
#include <stdio.h>
[/code]
end