İlk olarak, PHP çiftleşmiş dildir. Eğer PHP tabanlı web uygulamaları için bir şablon sistemi kullanarak bahsederken aklınızda tutun.
Şimdiye HERHANGİ çiftleşmiş motoru kullanarak duyduğum tek 'gerçek' argümanı onlar PHP bilmiyorum ve size güvenmiyorum kime şablon tasarımcıları varsa kullanışlı olabilir şablon manipülasyon için basit bir dil sağlamak oldu mantıklı PHP kullanmayı öğrenmek.
Bu argümanların ilgili olarak, ben senin şablon tasarımcıları şablon tasarımı için yeterli PHP öğrenmek için yetkili değilse, muhtemelen yeni şablon tasarımcıları bulma düşünmelisiniz iddia ediyorum. Ayrıca, PHP kendisi kodunda karşı bir şablon kullanabilirsiniz kontrol deyimleri için farklı bir sözdizimi sağlar. Örneğin:
<? foreach($array as $key => $val): ?>
<?= $val ?>
<? endforeach; ?>
VS:
<?php
foreach($array as $key => $val) {
echo $val;
}
?>
Şahsen, ben çiftleşmiş motorları PHP, çünkü ortaya çıktı inanıyoruz:
- Diğer diller bunu bu şekilde bulunuyor
- Iyi PHP programcıları sunum ve uygulama mantığı ve şablonları arasındaki mesafeyi zorlamak için bir yolu bunu yapmak için kolay bir yol vardı ihtiyacı olduğunu fark etti.
Birinci nedeni, sadece çok saçma. İkinci nedeni biraz kendini kontrol ve uygulama katmanları ayırma gerekliliği hatta ilkel bir anlayış ile aşılabilir. MVC tasarım deseni, bu sorunla bir yoludur. Bildiğim kadarıyla bazı kendini kontrol egzersiz gibi, benim kuralı olduğunu sadece gerekli döngüler ve tablolar filtre, kaçış, ekran çıkışı biçimlendirmek fonksiyonları yanı sıra alışmak durumunda.
Yaygın Smarty kullanılmış olması, dürüst her zaman buna çözüm yaptım daha fazla almak için daha fazla engel ile bana sundu söyleyebiliriz. Eğer bir şey, PHP tabanlı şablonları geçiş aslında şablonları ve kod her ikisi için geliştirme zamanı azalmıştır budur.