Просмотр поста

.
Screamer

Koenig,

имхо фильтр зря сразу применяешь, его надо в выводе применять, сначало подготовить а потом уже готовое фильтровать

Не понял. В том виде в котором движок сейчас, там да, обработанный текст пишется в базу, а то что я сейчас делаю, там только при выводе обрабатывается.
по поводу пробелов и табов, trim()

Достаточно в начале перед htmlspecialchars с помощью trim обработать, я забыл добавить просто.
А вот это как раз таки нужно:
$string = preg_replace("~[\s]{4}|\t~", "\n" . str_repeat(' ', 4), $string); // Detab

Ибо иногда надо 4 пробела подряд поставить, а они должным образом не выводятся, да и tab в textarea введешь, только из буфера вставить, и то он помоему тоже должным образом не выводится.

echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n"
echo '<?xml version="1.0" encoding="utf-8"?>' . PHP_EOL;
экранировать как то не по мне

Это я на скорую руку написал, так то я тоже одинарные всегда использую, за исключением sql выражений.