Войти

Показать полную графическую версию : [решено] Как оформить текст


Artem-Samsung
21-11-2008, 19:21
<html>
<head>
<title>Уважаемые учасники форума OSzone</title>
</head>
<?php

echo "Как создать вот такой вот текст?"."<br />"
echo "т.е. что бы оно красиво отбражалось с синтаксисом, особенно код php"."<br />";
echo "а то даже не знаю как искать :)"."<br />";
echo "Спасибо";

?>
</html>

Coutty
21-11-2008, 19:51
Примерный алгоритм - поиск и замена :)


$str = "Наш текст с тэгами";
$str = htmlspecialchars($str); // преобразуем спецсимволы в html.
$str = str_replace("& l t ; ?php", "<span style='color:blue'> & l t ; ?php</span><span style='color:green'>", $str); // тэг <?php будет синим, а всё внутри него - зелёным
$str = str_replace("? & g t ; ", "</span><span style='color:blue'> ? & g t ;</span>", $str); // здесь зелёный заканчивается

Далее - внутри тэгов <?php и ?> ищем текст, заключённый в кавычки и по краям ставим <span style='color:red'> и </span>. Но нужно учитывать, что внутри закавыченного текста может встречаться escape-последовательность типа такого: "текст \" ещё".

Я в коде написал & g t ; и & l t ; через пробел, потому что оно неправильно отображается :)

Ещё забыл про комментарии - просматривается каждая строка в коде на начало символов // и до конца строки выделяется оранжевым.
Многострочные комментарии, наверное, проще выделить регулярным выражением по поиску символов /* и */. Я не знаю его)) Можно и без регулярок - просто заменять на <span color='orange'>/* и */</span>.

Что ещё забыл - поправьте) Да и самостоятельно можно ;)

Artem-Samsung
21-11-2008, 20:13
Класно, спасибо :)
А есть какие то готовые скрипты свободно распростроняемые?

Coutty
21-11-2008, 20:25
Есть, конечно :) Движок форума phpBB, например или просто что-нибудь, где упоминаются BB-коды. Оттуда выковорить и всё.
Наверняка есть и отдельный скрипт обработки BB-кодов. Я просто не интересовался. Может, на pear.php.net что-то найдётся.
Свободно распространяемое, разумеется.

Arrest
21-11-2008, 20:43
Извращенцы...
http://ru2.php.net/manual/ru/function.highlight-string.php

Coutty
21-11-2008, 21:01
Кто бы мог подумать :)

Artem-Samsung
21-11-2008, 23:52
Всем большое спасибо.
Теперь знаю в какую сторону бежать.

Подскажите еще пожалуйста, в какой стороне оформление <textarea></..> ?
Что бы встроить простейший визуальный редактор HTML кода. А то как то неудобно немножко пользоваться нагроможденным spaw2.




© OSzone.net 2001-2012