jak použít preg_match_all v latte
- Rellik
- Člen | 104
Zdravím vespolek. Trápím se s „vycucnutím“ jedné hodnoty
z vypsaného textu na stránce. Abych vysvětlil co potřebuju:
Mám stránku s textem, kde se může vyskytnout odkaz na soubor pdf. Pokud se
tento odkaz objeví, potřebuju aby se dal nějak zjisit název souboru. To bych
zvládl v presenteru pomocí
// odkaz je v DB ve formátu <a href="dokument.pdf">dokument.pdf</a>
preg_match_all("/pdf">(.*)</Us",$pdf,$match, PREG_SET_ORDER);
$this->template->pdf = $match['0']['1']; // tím dostanu název dokumentu
Bohužel se to vypíše pokaždé (mám na stránce takové texty 4 a tak se
to oběví u všech) Takže bych tuto část, kde získávám ten název,
chtěl použít v latte, kde jsou články vypisovány pomocí foreach.
Bohužel, když sem ten preg_match_all dal přímo do šablony, tak už se to se
mnou nebavilo. Poradí někdo jak to provést v latte? Potřebuju to pro
vytvoření náhledu PDF s odkazem na stránku, kde bude možné PDF číst
přímo.
Díky
Editoval Rellik (10. 10. 2012 18:48)
- Rellik
- Člen | 104
Ok.
Mám vkládání příspěvků do DB pomocí textarey s TinyMCE nástavbou.
Pokud do toho příspěvku přidám odkaz na dokument pdf, tak bych z něho na
výstupu chtěl udělat náhled PDF (není nutné) a odkaz na stránku, kde by
bylo možné číst PDF aniž bych ho musel sahovat (Mám hotové). Jen mě
brzdí to, že z toho textu, kerý se vypíše z DB potřebuju získat název
toho dokumentu. Jelikož ale těch příspěvků mám na jedné stránce
několik, tak to musím nějak řešit až ve výstuptu v latte.
Kód:
{foreach $content as $news}
{!$news}
// tady potřebuju z toho $news dostat z odkazu na dokument název dokumentu, pokud je teda přiložen.
// odkaz je v DB ve formátu <a href="dokument.pdf">dokument.pdf</a>
{/foreach}
Když sem zkoušel zakomponovat tu funkci preg_match_all přímo do latte tak háže chybu Undefined offset 0
pokusný kód:
{foreach $content as $news}
{!$news}
{preg_match_all("/pdf">(.*)</Us",$news,$match, PREG_SET_ORDER)}
{var $pdf= $match[0][1]}
<img src="{$basePath}/nahled_pdf.php?pdf={$pdf}" alt="">
{/foreach}
No a právě proto se ptám… :)
EDIT: NOX ono ten počet příspěvků na stránce je různý od 1 po 10 + stránkování, tak myslím, že do presenteru to nebude to pravé ořechové…
Editoval Rellik (10. 10. 2012 21:59)
- Rellik
- Člen | 104
Tak už sem to vyřešil, sice ne uplně přímo čistě, ale nicméně to
funguje jak má… http://veletiny.cz/ – Kde je v článku příloha PDF,
tak se přidá odkaz na online čtení dokumentu…
Takže díky všem co se snažili nějak pomoct. :)