Ben PHP altında çalışacak temel bir betik / çiftleşmiş motoru yazmak için bir ihtiyaç var. İdeal olarak, bir (X) HTML şablonu ile kendi işaretleme dili karıştırın ve dinamik (X) HTML bir veritabanı üzerinden servis ile kendi biçimlendirme yerine bir sunucu tarafı çözümleyici aracılığıyla belgeyi çalıştırmak mümkün olacaktır.
Ne yazık ki, PHP ve scripting tüm bilgi için, nereden başlayacağınızı pek emin değilim. Benim ilk içgüdüsü regex çözümleyici çeşit ile tüm belgeyi çalıştırmak ve özel PHP işlevlerinin benim özel biçimlendirme Haritayı oldu ... ama bu biraz yavaş ve ağır eli gibi geliyor bana.
Hangi kaynaklar / öğreticiler / örnekler, bana doğru yönde işaret edebilir var? Karşılaştırma için, gerçekten. NET MVC için yeni Razor çiftleşmiş motoru gibi ... Ben tamamen bir PHP projesi için onu vurmak istemiyorum, ama benzer bir şey inşa harika olurdu.
Update
Tamam, bana biraz daha benim açıklama hassaslaştırması ... Ben WordPress için web siteleri geliştirmek. Benim müşteri bir sürü kendi web sitelerini özelleştirmek ama PHP hakkında konuşmaya başlamak zaman kaçmak istiyor. Bu yatıyordu kullanıcı bile ilgi almak istiyorum için çok karmaşık görünen bir betik dili bulunuyor.
Ne yapmak istiyorum WordPress için özel biçimlendirme benim kendi formunu oluşturmak olduğunu. Yerine tema dosyasında PHP işlevi çağrıları (get_header()
ve get_footer()
ve if(has_posts())
...) sahip daha Yani alanlı olurdu XML ({[( 3)]} ve <wpml:footer />
ve <wpml:loop> ... </wpml:loop>
) aynı şey çevirir. Bu (temanın PHP şablon dosyalarını doğrudan bütün PHP fonksiyonları yerleştirmek çeşitli temalar var!) Sunucu tarafı komut dosyası şablon dosyaları ayırarak daha iyi bir iş yapacağını ve daha kolay olmayan geliştiriciler çalışmaya başlamak için yapmak istiyorum Bir özelleştirme bir WordPress teması ile.
Aklınızda ile, TWIG ve Mackrell zaten önerilen çözümler kesinlikle dosyasında script "nugget" gömme fikri destekleyen, ama onlar gerçekten beni sunucu tarafında tarafından tanınabilir bir şey içine özel XML / XHTML biçimlendirme ayrıştırmak yardım yok kodu.
Peki ... Yeni bir sunucu tarafı biçimlendirme işlemci oluştururken nerede başlar?