Ben bir şablon motoru olan Smarty üzerine geldi. Ama Zend, CakePHP çerçeveler de vardır. Smarty Zend gibi, ya da tamamen farklı? Smarty sadece ekrandan mantığı ayırır - Bu Zend gibi bir çerçeveye benzer?
Zend tam bir php framework ise Smarty bir şablon motorudur.
Smarty
Smarty PHP ile yazılmış bir web şablon sistemidir. Smarty öncelikle uygulamaların belirli türleri için ortak bir tasarım stratejisi olduğu endişeleri, ayrılması için bir araç olarak teşvik edilmektedir. [1] [2]
Smarty generates web content by the placement of special Smarty tags within a document. These tags are processed and substituted with other code.
Tags are directives for Smarty that are enclosed by template delimiters. These directives can be variables, denoted by a dollar sign ($), functions, logical or loop statements. Smarty allows PHP programmers to define custom functions that can be accessed using Smarty tags.
Smarty is intended to simplify compartmentalization, allowing the presentation of a web page to change separately from the back-end. Ideally, this eases the costs and efforts associated with software maintenance. Under successful application of this development strategy, designers are shielded from the back-end coding, and PHP programmers are shielded from the presentation coding.
Zend
ZF bir kullanım-at-irade çerçevedir. ZF MVC, Tablo Veri Ağ Geçidi ve Satır Veri Ağ Geçidi tasarım desenleri bileşenleri sağlasa tek bir kalkınma paradigması veya tüm Zend Framework kullanıcıların takip etmelidir model vardır. Zend Framework web uygulama geliştirme birçok diğer ortak gereksinimleri için özel bileşenler içerir. [1]
Zend Framework de PHP toplumda web geliştirme en iyi uygulamaları teşvik etmek istiyor; sözleşmeler yaygın olarak pek çok diğer çerçeveler olarak ZF kullanılan değil, oldukça öneriler her ZF uygulamanın özel gereksinimleri için kılınabilir makul varsayılan ayarı tarafından ortaya konur. [4]
A template engine (Smarty) sadece gerçek kod ekran ayırmak için bir yöntem sağlar.
A framework (Zend, CakePHP, Drupal, vb) esas olarak PHP üstünde bir dil uzatma içerir. Daha sonra sitenizi yazmak için bu 'dili' kullanın. O (daha çok en azından) kolaylıkla daha karmaşık görevleri gerçekleştirmek için yöntemler sağlar. Genellikle vb veritabanı erişimi, güvenlik, i18n/l10n, önbelleğe alma, çiftleşmiş gibi şeyler olur
Zend PHP dilinin bir JIT uygulamasıdır. Bu PHP kodu tüm işler ve yürütme için makine koduna derler. Böyle APC olarak önbelleğe çerçeveler performansını artırmak için opcode önbelleğe alınmasını sağlamak.
Smarty PHP uygulanan bir şablon dildir. Bu iş mantığını ve sunumu birbirinden ayırır.
Zend -> PHP -> Smarty -> Web Sitesi
Eğer biraz bu kavramları karıştırma ediyoruz.
Bir şablon motoru ekrandan mantığı ayrı değil ama bunu başarmak için bir araçtır.
Bir çerçeve, diğer taraftan, genel işlevsellik sağlayarak ortak kod seçici geçersiz veya belirli işlevleri [Wikipedia] sağlayarak kullanıcı kodu ile uzmanlaşmış olabilir hangi bir soyutlama değildir. Zend Framework dahil olmak üzere bazı çerçeveler, bu basit sebat, mantık ve sunum katmanları izole yapma, MVC (Model View Controller) mimari desen bir uygulama sağlamak.