Подсветка кода с нумерацией строк

542
.
Swank
Сексуальность валенка
Вот пытаюсь такое организовать, ели вышло но криво, с регулярками не дружу так что зделал на обичном str_replace
Вот так вот
private static function highlight_code($var)
    {
        if (!function_exists('process_code')) {
            function process_code($php)
            {
                $php = strtr($php, array('<br />' => '', '\\' => '\'));
                $php = html_entity_decode(trim($php), ENT_QUOTES, 'UTF-8');
                $php = highlight_string(stripslashes($php), true);
                $php = strtr($php, array('\' => '&#92;', ':' => '&#58;', '[' => '&#91;'));
$php = str_replace("<br />", "</li><li>
",$php);
                return '<div class="phpcode"><ol><li>' . $php . '</li></ol></div>';
            }
        }
        return preg_replace(array('#\[php\](.+?)\[\/php\]#se'), array("''.process_code('$1').''"), str_replace("]\n", "]", $var));
    }

Нумерация работает но пропала подсветка кода
вот http://socmos.ml/articles/?act ... id=14 помогите исправить
.
Swank, В самое начало process_code:
$php = substr($php, 0, 2) != "<?" ? "<?php\n" . $php . "\n?>" : $php;
.
Swank
Сексуальность валенка
reaper, Я это специально убрал, а то бесило, вылажуеш js код а тут php...
Это я так понимаю на роботу не как не влияет
.
I'm the Cult of Personality...
# Swank (02.01.2015 / 00:49)
reaper, Я это специально убрал, а то бесило, вылажуеш js код а тут php...
Это я так понимаю на роботу не как не влияет
Изза это-го и не пашет. Функция highlight_string() спицом для подсветки пхп кода. убери "<?" или "<?php" уже после подсветки.
.
Ей 25
Да, открывающий пхп тег обязателен. Сразу не обратил на это внимания, только потом понял.
.
Swank
Сексуальность валенка
BoGdAn, А ну попробую тогда
Упд: все пашет спасибо
.
# Swank (02.01.2015 / 00:49)
reaper, Я это специально убрал, а то бесило, вылажуеш js код а тут php...
Это я так понимаю на роботу не как не влияет
Функция highlight_string работает только с php. Чтобы была возможность работать с другими языками, придётся либо отказаться от поддержки их подцветки, либо писать самому, либо искать библиотеку, где это уже реализовано. Я бы посоветовал последнее.
.
Сексуальность валенка
reaper, Ну всякие либы я юзать не хочу слишком они все тяжолые, хотя это самые популярные наверно
Мне не нужно что то типо гаши
Хай и предназначенно только для php, но подсвечует все хоть и отличные от php языки криво
.
I'm the Cult of Personality...
# Swank (02.01.2015 / 00:59)
BoGdAn, А ну попробую тогда
Упд: все пашет спасибо
Всеравно не по стандартам xml. Ты заменяеш тег <br /> на </li><li>, но тег <br /> очень часто (если не всегда) внутри тега <span>. Ошибки синтаксиса будут.
Юзай подсветки на js, и серв лишний раз грузить не будет.
.
Swank
Сексуальность валенка
BoGdAn, Да нельзя так вроде сделать
Если хочешь можешь попробовать
Вот тест акк
test
test
http://socmos.ml/login.php
Я думаю сама функция подсветки так сделана что нельзя
--
Юзал на js но чёт они мне все не нравяться
Всего: 13