1 / 16

Smarty – šablonu sistēma priekš PHP

Smarty – šablonu sistēma priekš PHP. (en. template engine for PHP ). Jānis Vītols LU 2011. Kas ir Smarty?. Šablonu sistēma, kas ļauj atdalīt PHP kodu no HTML; Padara programmēšanas un dizaina pusi vienkāršaku un tīraku; Uzrakstīts PHP skriptēšanas valodā; Uzrakstīts ar OOP pieeju.

Download Presentation

Smarty – šablonu sistēma priekš PHP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Smarty – šablonu sistēma priekš PHP (en. template engine for PHP) Jānis Vītols LU 2011

  2. Kas ir Smarty? Šablonu sistēma, kas ļauj atdalīt PHP kodu no HTML; Padara programmēšanas un dizaina pusi vienkāršaku un tīraku; Uzrakstīts PHP skriptēšanas valodā; Uzrakstīts ar OOP pieeju. *PHP - Personal Home Page / PHP: Hypertext Preprocessor *HTML - HyperText Markup Language *OOP – Object Oriented Programming

  3. Uzstādīšana Mājas lapa: http://www.smarty.net/ Lejupielādēt Smarty Atpakot Ievietot mājas lapas direktorijā, vai arī kādā sistēmas direktorijā (/usr/local/lib/php/Smarty) Izveidot mājas lapas direktorijā direktoriju smarty un tajā direktorijas: templates, templates_c, cache, configs. Uzlikt tiesības.

  4. Uzstādīšana *Instrukcijas: http://www.smarty.net/quick_install

  5. Smarty PHP faila saturs <?php // Pievienojam Smarty klasi/bibleotēku include('Smarty.class.php'); // Izveidojam Smarty objektu $smarty = new Smarty; // Piešķiram Smarty mainīgajam vērtību $smarty->assign('greeting', 'I am in!'); // Nosakam kādu šablona failu ielādēt $smarty->display('index.tpl');

  6. Smarty šablona faila saturs {* Smarty *} <html> <head><title>Hello There!</title></head> <body> <p>My first Smarty page!</p> <p>{$greeting}</p> </body> </html>

  7. Kā strādā Smarty?

  8. Smarty šablonu valoda (Pamata) • Komentāri • {* Šādi pievieno komentārus HTML failā *} • Funkcijas • {include file=“header.tpl”} • {include file=“footer.tpl”} ... • Atribūti priekš funkcijām • {include file=“header.tpl” title=“Mana mājas lapa” css=“my.css”}

  9. Smarty šablonu valoda (Mainīgie) • Mainīgo vērtību piešķiršana • $smarty->assign(“smartyVar”, $phpVar); • Mainīgo pielietošana • {$greeting} • {$row.firstName} • {$results.name.firstName} • {$row[0][0]} • {$person->firstName}

  10. Smarty šablonu valoda (Konfigurācijas) • Vairāku valodu atbalsta realizācija: • {config_load file="language.conf“ section=$currentLanguage} • $currentLanguage – vērtība ielādējas caur $smarty->assign(); • Language.conf – satur dažādus tulkojumus • HTML failā izmanto – {#text_to_translate#}

  11. Language.conf piemērs • [lv] • MAIN_HELLO = “Čau”; • LOGOUT_BUTTON = “Iziet”; • [en] • MAIN_HELLO = “Hi”; • LOGOUT_BUTTON = “Sign out”; * HTML .tpl failā pielietojās: {#MAIN_HELLO#}, {#LOGOUT_BUTTON#} utt...

  12. Smarty šablonu valoda (Modifikatori) • PHP failā: $smarty->assign("name", "Smarty is powerful, yet easy! "); • HTML .tpl failā: {$name|capitalize|spacify|truncate:45:"…"} • Pārlūkā: S m a r t y I s P o w e r f u l , Y e t...

  13. Cikli, sekcijas PHP fails: $sql = "SELECT firstname, lastname FROM usertable"; $result = mysql_query($sql); while($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $users[] = array ( 'firstname' => $row['firstname'], 'lastname' => $row['lastname'] ); } $tpl->assign('users', $users); HTML šablona fails: <table> <tr> <th>Firstname</th> <th>Lastname</th> </tr> {section name=userinfo loop=$users} <tr> <td>{$users[userinfo].firstname}</td> <td>{$users[userinfo].lastname}</td> </tr> {/section} </table>

  14. Nosacījumi • if, elseif, else • Operatori: • "eq", "ne","neq", "gt", "lt", "lte", "le", "gte" "ge","iseven","is odd", "is not even","is not odd","not","mod","divby","evenby","odd by","==","!=",">", "<","<=",">=" • Piemērs: {if $firstname} Hello {$firstname}. {else} Hello stranger. {/if}

  15. Kāpēc lietot Smarty? Viņš ir ātrs; Kompilējās PHP failā, katru reizi nav jāiziet (en. Parsing) viss(i) šablonu faili; Labi strādā ar kešošanu (en. Cache) un dažādiem paātrinātājiem (en. Accelerators); Spēcīga šablonu valoda: cikli, mainīgie, funkcijas, konfigurācijas faili...; Iespēja veidot spraudņus (en. Plugins).

  16. ... $smarty->assign(“the_end”, “Paldies par uzmanību!”); ... {$the_end}

More Related