przewiń do treści

PHP, MySQL i MVC
Tworzenie witryn WWW opartych na bazie danych

Włodzimierz Gajda

Okładka książki „PHP. Praktyczne projekty”

Listing 24.4.
Funkcja parse_article()

ROZDZIAŁ:24. Spis treści
TXT:listing-24-04.txt
function parse_article($filename)
{
    $tmp   = file_get_contents($filename);

    $tytul  = trim(htmlGetTagsContent($tmp, 'h1'));
    $autor  = trim(htmlGetTagsContent($tmp, 'h2'));
    $body   = trim(htmlGetTagsContent($tmp, 'body'));
    $lid    = trim(htmlGetFirstMatch($tmp, '|<p class="lid">(.*)</p>|Usim'));

    $body  = htmlDeleteTag($body, 'h1');
    $body  = htmlDeleteTag($body, 'h2');
    $body  = htmlSetFirstMatch($body, '|(<p class="lid">.*</p>)|Usim', '');
    $body  = trim($body);

    $tablicaTOC = getTableOfContents($body);
    $napisTOC   = getTableOfContentsAsString($tablicaTOC);
    $body       = replaceChapters($tablicaTOC, $body);

    $body = preg_replace(
        '/<img src="([^"]+)"/Usim',
        '<img src="..//\\1"',
        $body
    );
    $body = str_replace('<pre>', '<pre class="syntax-highlight:xml">', $body);

    $artykul_dane = array(
        'tytul'      => $tytul,
        'slug'       => string2slug($tytul),
        'tresc'      => $body,
        'lid'        => $lid,
        'spistresci' => $napisTOC
    );
    return $artykul_dane;
}
©2010 Włodzimierz Gajda