Nori gauti straipsnius el. paštu - Prenumeruok

Straipsniai pagal gairę

Smarty pluginas: in array

Kai aš pradėjau programuoti tiek programinio kodo logiką, tiek atvaizdavimą dėjau į vieną vietą. Tai tikrai yra blogai, nes skaitomumas stipriai sumažėja. Šiektiek paaugus pradėjau naudoti paprastą šablonų sistemą phemplate. Viskas gerai, kol neprireikia šiek tiek paprastos logikos. Tada prade naudoti įvairiausius apgaulės būdus, kurie tikrai nėra patogūs. Žinoma galima pasirinkti šablonų sistemą kuri turi savyje logikos, kad ir smarty. Bet visuomet susiduriama su tokių šablonų trūkumais, nes atsiranda tikrinimo variantai, kurių pati sistema nepalaiko. Tada pagalvoji, kad geriausia šablonų sistema yra pati programavimo kalba. Tereikia atskirti failais logiką bei atvaizdavimą ir štai mes turime galingą šablonų sistemą. Bet vis dėl to jei esate pririštas prie smarty galima pasidžiaugti, kad galima kurti papildomas galimybes pačiam.

Visai neseniai man reikėjo susirasti paprastą sprendimą php komandai in_array. Smarty to nepalaiko. Pasinaudojus “insert” galimybę sukuriamas naujas pluginas.

function smarty_insert_code_in_array($params, &$smarty) { $bResult = false; if (isset($params['value']) && isset($params['array']) && is_array($params['array'])) { if (in_array($params['value'], $params['array'])) { $bResult = true; } } if (!isset($params['var'])) { $outvar = "rez_inarray"; } else { $outvar = $params['var']; } $smarty->assign($outvar, $bResult); }

Šį failą įrašome tarkim čia smarty/plugins/insert.code_in_array.php

O panaudoti gan paprasta:

{insert name="code_in_array" array=$manomasyvas value=$ieskomareiksme var="atsakymas"}

ir turėsime mes kintamąjį $atsakymas kurį jau galėsime panaudoti.

> home
  • Apie mane
  • Apklausos
  • Blogas
  • Lietblogs Search
  • Nuorodos
  • Reklama mano bloge
  • Search
  • Tags
  • Testas
  • Projektai
  • Kontaktuok
  • Archyvas