Görünümünde (MVC) veri yerleştirmek için en iyi yoldur

2 Cevap php

Ben bunu bir görünümde veri sunmak istiyorsanız çerçevede ben, ile çalışıyorum:

<h1><?php echo $this->header ?></h1>

Geçenlerde xTemplate keşfetti ve onu dize tutucuları kullanır, böylece bir xTemplate yukarıdaki kodu olacaktır fark ettim:

<h1>{HEADER}</h1>

Ben her zaman görünümde biraz php ok ve aynı zamanda bir str_replace yaparak daha hızlı olduğunu düşündüm, ama ben son zamanlarda bir tasarımcı ile çalışmaya başladı ve ben çok şey php etiketlerinin html onu şaşırtmak düşünüyorum.

Bu konuda düşüncelerinizi bilmek istiyorum.

Teşekkürler.

Not: Bu subjektif olabilir ama ben gerçekten iyi yolu bulmak ya da en azından bu yaklaşımların her ikisi de tüm artılarını ve eksilerini bilmek istiyorum.

2 Cevap

PHP çiftleşmiş dili olarak tasarlanmıştır. Ben şablon motoru yukarıda şablon motorları oluştururken hiçbir noktaya bakın.

Karşılaştırmak

 Hi, <b><?=$username?></b>

 Hi, <b>{username}</b>

Ilk varyant çok karmaşık?

Eğer Smarty çalışırsanız, çok surprized olacak kadar karmaşık it is. Saf EVIL: http://www.smarty.net/manual/en/language.function.foreach.php

 {foreach name=outer item=contact from=$contacts}
   <hr />
   {foreach key=key item=item from=$contact}
     {$key}: {$item}<br />
   {/foreach}
 {/foreach}

Bu PHP'nin foreachs daha okumak için basit mi? Güldürme beni yapmayın.

EVIL. Don't use any template engines other than the PHP itself. Provide enough helpers functions to your designer and he will not complain.

İlginç bir soru. Ben bir tasarımcı şu avantajları olarak PHP, ancak PHP görerek olabileceğini nasıl karıştı bilmiyorum:

  • Başka bir sözdizimi (şablon dili) öğrenmek zorunda değilsiniz
  • Şablonda (tabii her şeyi yapmak değil gerektiği halde) PHP her şeyi yapmak için yeterince esnek.