zend-blog-3-backend

Форк
0
28 строк · 734.0 Байт
1
<?php
2

3
namespace App\Utils;
4

5
use App\Utils\Pygment\Highlighted;
6

7
class Pygment
8
{
9
    /**
10
     * @param string $content
11
     * @param string $lexer
12
     *
13
     * @return Highlighted
14
     */
15
    public static function highlight(string $content, string $lexer): Highlighted
16
    {
17
        $file = sys_get_temp_dir() . '/pygments_' . time();
18
        file_put_contents($file, $content);
19

20
        $outputTable = [];
21
        $outputInline = [];
22
        exec('pygmentize -f html -l ' . $lexer . ' -O linenos=table ' . escapeshellarg($file), $outputTable);
23
        exec('pygmentize -f html -l ' . $lexer . ' ' . escapeshellarg($file), $outputInline);
24
        unlink($file);
25

26
        return new Highlighted($outputTable, $outputInline);
27
    }
28
}
29

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.