RkBlog

Hardware, programming and astronomy tutorials and reviews.

PHP Markdown

PHP Markdown to funkcja parsująca tekst i zamieniająca odpowiednie znaczniki na określony kod HTML. Stosowane znaczniki odnoszą się do "formatowania" używanego w zwykłych plikach tekstowych. Skrypt można pobrać z tej strony.
By uruchomić parsowanie wystarczy:
<?php
include_once "markdown.php";
echo Markdown('tutaj tekst');

Znaczniki

Do testowania znaczników możemy skorzystać z takiego oto kodu:
<?php

<?PHP
ob_start();
?>
tutaj tekst
===============
<?PHP
$tekst = ob_get_contents();
ob_end_clean();

include_once "markdown.php";
echo Markdown($tekst);
?>
Otwarcie strony z tym kodem w przeglądarce wyświetli duże "tutaj tekst" :) dlaczego? o tym poniżej.

Używanie znaczników HTML

Markdown zezwala na ich pełne używanie z tym że tagi "podwójne" typu table, div, p muszą być oddzielone od tekstu, muszą być w oddzielnej linii:
<table border="1">
    <tr>
        <td>Foo</td>
    </tr>
</table>

Nagłówki

Nagłówki mogą być oznaczane w następujący sposób:
To jest H1
=============

To jest H2
-------------

# To jest H1

## To jest H2

###### To jest H6
W przypadku znaczników z # ich ilość oznacza numer H, np. ### da H3.

Blok Wcięcia

> To jest wcięcie. Lorem ipsum dolor sit amet,
> consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
> Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
> 
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
> id sem consectetuer libero luctus adipiscing.
Wygeneruje tekst z wcięciem. Można tworzyć złożone wcięcia za pomocą wielokrotnych > (np. >>)

Listy

Nienumerowane:
*   jeden
*   dwa
*   lepper
Zamiast * można użyć + lub -
1.  coś
2.  numerowanego
3.  test


Wcięcia

Nieco innym sposobem generowania wciętych bloków jest po prostu "wcinanie" tekstu za pomocą 2 tabów:
To jest H1
=============
		*   Red
		*   Green
		*   Blue


Linie poziome

Możliwe kombinacje:
* * *

***

*****

- - -

---------------------------------------


Odnośniki

Proste:
To jest [przykładowy](http://foo.pl/ "Tytuł") link

[Link](http://foo.net/) bez tytułu (title)

Rozdzielone:
To jest [test] [id] linku innego

[id]: http://strona.pl/  "Strona A. Leppera"
Efekt będzie ten sam lecz zbiór linków może być uszeregowany np. na końcu dokumentu dla ułatwienia edycji.

Wygląd tekstu

*kursywa*

_kursywa_

**pogrubienie**

__pogrubienie__

Wyświetlanie kodu

Proste wyświetlanie kodu możliwe jest po zastosowaniu odwróconego pojedynczego cudzysłowia:
`tutaj jakiś kod`


Grafika

![tekst dla alt](/ścieżna do/pliku.jpg)

![tekst dla alt](/ścieżna do/pliku.png "Opcjonalny tytuł")
RkBlog

PHP w Akcji, 14 July 2008, Piotr Maliński

Comment article