Немного обо всем интересном
На главную Обратная связь Поиск
Главная
Форум
 
 
 
  Статьи Файлы Видео Кулинарные рецепты Города и Страны Разное  
Отдых и развлечения Юмор Видео, ТВ и музыка Непознанное Литература Спорт Игры Хобби
Окружающий мир Люди Страны и города География Флора и фауна Космос
Технологии Hardware Операционные системы Софт Интернет Мобильные устройства Сети и сетевая безопасность Разное
Дизайн и программирование Веб-строительство Дизайн и графика

Все статьи Список статей Добавить статью
 
Вниз
Подсветка PHP кода


   Часто бывает нужно разместить в статье, странице или еще где то, какой то хтмл, пхп или другой код. Но это сделать невозможно, так как все теги будут отображаться как код, а не как текст.
   Можно сделать его в виде символов (> и т.д.) но при редактировании он станет обычным опять.
   Можно сделать функции замен символов.

   Но проще всего, это использовать функцию highlight_string.

1.   Создаем файл highlight.php со следующим кодом:

<?php
function my_callback($matches) {
$numlines = max(substr_count($matches[1], "
"
), substr_count($matches[1], "<br />")) + 1;
$numlines = $numlines * 18;
if (
$numlines > 600) // подсчет высоты, при превышении которой следует поместить код в прокрутку.
{
$numlines = "height:600px;";
} else {
$numlines = "";
}

$matches[1] = highlight_string($matches[1], true);
$matches[1] = eregi_replace(" "," ",$matches[1]); //Заменяем в получившемся коде пробелы
$matches[1] = "<div style="margin:0px; padding:6px; border:0px inset; $numlines overflow:auto">$matches[1]</div>"; //Оформляем код
return $matches[1];
}

function
highlight ($data) {
$data = preg_replace_callback("![COD](.*?)[/COD]!si", "my_callback", $data);
return
$data;
}
?>

2.   Теперь лишь остается подключить этот файл и провести переменную через функцию highlight.

<?php
//коды, коды, коды
//запрашиваем переменную $text из базы данных
include("highlight.php"); // подключаем скрипт подсветки
$text = highlight($text); //пропускаем переменную через функцию подсветки
echo "$text";//выводим на экран
//коды, коды, коды
?>

3.   Теперь, если требуется написать код, его нужно лишь заключить между тегами: [COD] [/COD]

Важно: Если у вас стоят какие то запреты на хтмл или пхп коды (методом POST), или фильтры, которые вырезают их, то результата не будет. Функция stripslashes, если используется при выводе информации, также может повредить пхп код, который вы напишите.

Поэтому использовать такой метод добавления кода должен только администратор.

Данные:
Просмотров: 4082
Рейтинг: 10
Голосов: 1
Средний бал: 10
Комментариев: 0
Добавлен: 13.05.2007

Оценить:

Функции:



Шрифт:   +  -

Разместил: Alexander-V-Sh
Посмотреть все статьи этого пользователя
 
Добавить комментарий:

Оставлять комментарии могут только зарегистрированные пользователи.
Возможно заинтересует: • 
Вверх
2006-2010 Интересное.инфо.
При использовании или копировании материалов не забываем ссылку на http://interesnoe.info