Автор Тема: Кусочек кода.  (Прочитано 8151 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Кусочек кода.
« Ответ #15 : 15 Января 2002, 19:16:19 »
Цитировать
а посмотреть можешь как работает эта функция?


могу


// ###################### Start phphighlite #######################
function phphighlite($code) {
  
//PHP 4 only

  
if (floor(phpversion())<4) {
    
$buffer=$code;
  } else {
	
	
$code str_replace("
"
""$code);
	
	
$code str_replace("
"
""$code);
	
	
$code str_replace(">"">"$code);
	
	
$code str_replace("<""<"$code);

	
	
$code str_replace("&""&"$code);
	
	
$code str_replace(\'$\', \'\\$\', $code);
	
	
$code = str_replace(\'\\n\', \'\\\\\\\\n\', $code);
	
	
$code = str_replace(\'\\r\', \'\\\\\\\\r\', $code);
	
	
$code = str_replace(\'\\t\', \'\\\\\\\\t\', $code);

	
	
$code = stripslashes($code);

	
	
if (!strpos($code,"<?") and substr($code,0,2)!="<?") {
	
	
	
$code="<?\\n".trim($code)."\\n?>";
	
	
	
$addedtags=1;
	
	
}
	
	
ob_start();
	
	
$oldlevel=error_reporting(0);
	
	
highlight_string($code);
	
	
error_reporting($oldlevel);
	
	
$buffer = ob_get_contents();
	
	
ob_end_clean();
	
	
if ($addedtags) {
	
	
  $openingpos = strpos($buffer,\'<?\');
	
	
  $closingpos = strrpos($buffer, \'?\');
	
	
  $buffer=substr($buffer, 0, $openingpos).substr($buffer, $openingpos+5, $closingpos-($openingpos+5)).substr($buffer, $closingpos+5);
	
	
}
	
	
$buffer = str_replace(""", "\\"", $buffer);
  }

  return "</normalfont><blockquote><pre><smallfont>PHP:</smallfont><hr>$buffer<hr></pre></blockquote><normalfont>";
}


Оффлайн Alan

  • -{ Наблюдатель }-
  • Старожил
  • ****
  • Сообщений: 493
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.krivoyrog.info
Кусочек кода.
« Ответ #16 : 15 Января 2002, 20:04:45 »
не получается, но есть идея как это сделать, сам написать не могу (пока)
Есть текст:
---------------------------8<------------------------
текст текст текст
[-php]
echo "alan";
?>
[-/php]
текст текст текст текст
--------------------------------8<------------------
так вот я думаю надо сначала вырезать текст до [-php] и загнать в переменную (массив например) потом вырезать всё что после [-php] и до [-/php] и при этом удалить [-php] и [-/php] а что останется загнать тоже в переменную, потом вырезать что после [-php] было и тоже в переменную, а потом можно сделать что-то типа этого
echo $b[0]."
";
echo highlight_string ($b[1])."
";
echo $b[3];
:: Тот кто поднялся выше, просто полез раньше ::
   

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Кусочек кода.
« Ответ #17 : 15 Января 2002, 20:10:15 »
Кстати в пхп4 подсветка синтаксиса встроенная фича
переименуй любой скрипт в *.phps и посмотри на него в браузере.

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
Кусочек кода.
« Ответ #18 : 15 Января 2002, 20:23:04 »
Плюс еще ф-я show_source("имя_файла") есть.
Евгений aka Razor,

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Кусочек кода.
« Ответ #19 : 15 Января 2002, 20:34:10 »
А еще есть
highlight_string -- Syntax highlighting of a string
Description

boolean highlight_string (string str)


The highlight_string() function prints out a syntax highlighted version of str using the colors defined in the built-in syntax highlighter for PHP. It returns true on success, false otherwise (PHP 4).

Оффлайн Alan

  • -{ Наблюдатель }-
  • Старожил
  • ****
  • Сообщений: 493
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.krivoyrog.info
Кусочек кода.
« Ответ #20 : 15 Января 2002, 20:46:43 »
эт я знаю, но я хотел эту фишку использовать для скрипта добавления комментариев к статьям, что-то типа как на пхп.нет, только там код не выделяется, а этон не есть гуд..
Britva спасибо скачал в хелпе- очень удобно =)
Итак подитожим всё выше сказаное: пример приведенный
Теоретиком не работает только у меня, с тем что дал NAS я не знаю что делать, а кроме меня никто с такой проблемой не сталкивался... жаль прийдётся  просто выделять одним цветом... блин а такая фишка получилась бы...
:: Тот кто поднялся выше, просто полез раньше ::
   

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Кусочек кода.
« Ответ #21 : 15 Января 2002, 22:01:48 »
ну, будем исповедоваться?

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Кусочек кода.
« Ответ #22 : 15 Января 2002, 22:02:40 »
эээ я вторую страницу не увидел=)
ну, будем исповедоваться?

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Кусочек кода.
« Ответ #23 : 15 Января 2002, 22:09:26 »
Вообще довольно странно, что у тебя не работает это:
текст текст текст
[-php]
echo "alan";
?>
[-/php]
текст текст текст текст
 зайди на http://www.fastmultimedia.ru/index.html и вставь в форму этот кусок текст (не забудь убрать тире из тегов), или кусок статьи. Я для тестирования брал первые абзацы Lion\'овской статьи.
Увидишь результат работы.

Б%? буду - на шести машинах работает.
AS IS...

Оффлайн Alan

  • -{ Наблюдатель }-
  • Старожил
  • ****
  • Сообщений: 493
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.krivoyrog.info
Кусочек кода.
« Ответ #24 : 15 Января 2002, 22:25:36 »
да я уже не знаю... вот посмотри сам http://www.designer.vov.ru/stream_highlight/stream_highlight/index.html
я ничего не менял - это то что ты прислалThE0ReTiC
:: Тот кто поднялся выше, просто полез раньше ::
   

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Кусочек кода.
« Ответ #25 : 15 Января 2002, 22:30:25 »
Пришли взад.
AS IS...

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Кусочек кода.
« Ответ #26 : 15 Января 2002, 23:18:05 »
Я осел. прислал тебе не ту версию. Публично признаюсь в собственном идиотизме и прошу прощения.
Рабочий релиз ушел на твое мыло.
AS IS...

Оффлайн Alan

  • -{ Наблюдатель }-
  • Старожил
  • ****
  • Сообщений: 493
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.krivoyrog.info
Кусочек кода.
« Ответ #27 : 15 Января 2002, 23:26:03 »
Ты супер! =)ThE0ReTiC
:: Тот кто поднялся выше, просто полез раньше ::
   

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28