Descriere:Acest tutorial arata cum puteti crea o simpla pagina (fisier) template care sa fie utilizat pentru pagini web in PHP.
Download:
Autor:
Sursa (Link-ul oficial): Propria parere:Nu l-am incercat.
Tutorialul:
Vom folosi doua fisiere: "index.php" cu scriptul PHP in care sunt definite datele ce vor fi adaugate in pagina, si "page.tpl" care contine template-ul, cod HTML cu expresii ce vor fi inlocuite cu date definite in "index.php".
Expresia adaugata in template, in codul HTML, are aceasta forma (un comentariu HTML):
Cod: Selectaţi tot
<!-- CUVANT -->Codul pt. template, adaugat in "page.tpl" (cu HTML5)
Cod: Selectaţi tot
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title><!-- TITLE --></title>
<meta name="description" content="<!-- META_DESCRIPTION -->" />
<meta name="keywords" content="<!-- META_KEYWORDS -->" />
<style>header, footer, section, aside, nav, article {display: block;}</style>
<!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
</head>
<body>
<header id="header">
<h1><!-- TITLE --></h1>
</header>
<section id="article">
<!-- ARTICLE -->
</section>
<section id="sidemenu">
<nav><!-- SIDEMENU --></nav>
</section>
<footer id="footer">
<!-- FOOTER -->
</footer>
</body>
</html>Cod: Selectaţi tot
<?php
// array cu chei /cuvinte care sunt adaugate in template (in comentariu HTML)
// aceste elemente (initial fara valoare) vor contine date care vor inlocui comentariu HTML din template
$templ = array('TITLE'=>'', 'META_DESCRIPTION'=>'', 'META_KEYWORDS'=>'', 'ARTICLE'=>'', 'SIDEMENU'=>'', 'FOOTER'=>'');
// preia cheile din $templ ca sa fie adaugate in RegExp
$templ_k = array_keys($templ);
// Sablon /Tipar RegExp cu expresia folosita in template
$templ_rgx = '/<!-- ('.implode('|', $templ_k).') -->/e';
// setare /definire date in elementele din $templ, care vor inlocui comentariu corespunzator in template
// aceste date pot fi preluate dintr-o baza de date, fisier extern, array, etc.
$templ['TITLE'] = 'Cursuri gratuite: www.marplo.net';
$templ['META_DESCRIPTION'] = 'Descriere adaugata in meta tag';
$templ['META_KEYWORDS'] = 'Cuvinte, importante, din pagina';
$templ['ARTICLE'] = 'Articol, continut adaugat in corpul paginii';
$templ['SIDEMENU'] = 'Meniu: <ul><li><a href="http://www.marplo.net/" title="Cursuri gratuite">Cursuri gratuite</a></li></ul>';
$templ['FOOTER'] = 'Continut adaugat in subsolul paginii';
// preia template-ul
$tpl = file_get_contents('page.tpl');
// inlocuieste datele in template si afiseaza pagina obtinuta
echo preg_replace($templ_rgx, "\$templ['$1']", $tpl);
?>Cod: Selectaţi tot
/<!-- (CUVANT_1|CUVANT_2|CUVANT_3) -->/e- Extensia "/e" determina functia preg_replace() sa evalueze expresia inainte de inlocuire.
- Prin adaugarea cuvintelor pentru template in array ca elemente cu valoare vida, se evita erorile in cazul in care nu sunt definite date pentru acel element, si va adauga valoarea vida in codul HTML.[/b]

