Malo offtopic-a:
Bas mi ne ide u glavu zasto je vecina ljudi toliko protiv "mesanja PHP-a i HTML-a" ? :-) Mislim, na kraju krajeva, sta god koristili (smarty ili neki drugi template engine) opet se to na kraju svede na PHP u HTML-u.
Jedan zanimljiv citat sa CodeIgniter-ovog manual-a:
Citat:
Note: CodeIgniter does not require you to use this class since using pure PHP in your view pages lets them run a little faster. However, some developers prefer to use a template engine if they work with designers who they feel would find some confusion working with PHP.
Daleko od toga da sam sad neki protivnik Smarty-ja, bas naprotiv - dugo sam koristio Smarty i zaista mi je pomogao u razdvajanju logike od view-a. Ali, nakon velike konzumacije istog, krenuo sam da radim u timu koji je radio bez template-a i od tada vise nisam ni pomislio na neki Template Engine. No, nebitno.
Uglavnom, ono sto sam hteo da kazem, jeste - da se pod "mesanjem PHP-a i HTML-a" smatra mesanje Logike i Prikaza, tj. nesto tipa:
index.php:
Code:
<?php
// Proveri da li je korisnik ulogovan
?>
<head>
..
..
..
</head>
<?php
mysql_query(// Izvuci sve zapise iz baze ...);
$result = // Smesti rezultate u niz
?>
<table>
// Stampaj rezultate ....
</table>
Ovo je ono sto se
ne preporucuje i treba izbegavati naravno. Zato se primenjuje opste-poznati MVC model etc etc ... (nije ovo trenutna tema).
Suma sumare: Sta god radili, ne mozete izbeci mesanje PHP koda i HTML-a, bitno je samo drzati se pravila - "svako (svaka skripta) treba da radi ono za sta je namenjen".
U krajnjem slucaju, uzmite WordPress npr, koji je opste poznat i prihvacen Blog engine (CMS)... Pa pogledajte njegove View Template-e :-)) Koristi se alternativna sintaksa PHP-a (koju je inace 'pozeljnije' koristiti u template-ima):
Primer:
Code:
<?php if ($a > $b): ?>
// Uradi nesto pametno
<? endif; ?>
Link:
http://php.net/manual/en/contr...uctures.alternative-syntax.php
Btw, mozete baciti pogled i na:
http://nosmarty.net/
Btw2,
---
E sad, da se vratim konkretno na temu :-)
Ja recimo (tj. tim u kome radim) koristi CodeIgniter i sasvim sam/smo zadovoljni sa njim. Ukoliko nesto zatreba, lako se moze prosiriti dodatnim Library-ima/Helperima. Jednostavno, vrsi posao :-)
Jedina zamerka (i mozda problem ubuduce) jeste sto nije u potpunosti Objektno Orijentisan, tako da se sumnja kako ce raditi pod PHP 6icom (imao je cak i problema sa novijim verzijama PHP 5ice, ali je to zakrpljeno).
I da, naravno, dokumentacija sasvim dobra :-) Jednostavno, lepo sazeto i objasnjeno sve sto moze da zatreba :-)