tpl

2011-02-16 11 views
5

kullanarak php şablonları ifadeleri PHP kullanarak bir şablondan nasıl {if game > 4}{somecontent}{/if} ayrıştırabilirim.tpl

+1

Tam olarak "ayrıştırmak" için ne yapmak istiyorsunuz? Beklenen sonucun nedir? – Phil

+0

Ayrıca PHP şablonunun * tipini bilmek de yararlı olabilir. Birden fazla var. – cwallenpoole

+0

, index.tpl'nin bu duruma sahip olduğunu söyler. sonra $ game = 5 'i ayarladık. Bu, tpl dosyası ayrıştırıldığında {somecontent görüntülenir}}, buradaki koşul doğruysa –

cevap

5

Düz eski PHP kullanmanın nesi yanlış? Çok daha hızlı ve çok daha basit. Eğer iç içe tablolar ile çalışmak istediğinizde

<?php 
preg_match_all('/\{if ([^}]+)\}.+?\{\/if\}/s', $content, $matches) 

foreach ($matches as $match) 
{ 
    $expression = $match[1]; 

    // Evaluate expression 

    $content = preg_replace($match[0], $true ? $match[1] : '', $content); 
} 
?> 

Bu oldukça basit, bu en çok kıllı olsun: Eğer gerçekten ısrar ederse

<?php if ($game > 4): ?> 
some content 
<?php endif ?> 

, burada (denenmemiş) bir başlangıç.

+0

Şey, php kullanarak nasıl yapılabileceğini anlamak ister.Benim öğrenme eğrimle ilgili. Ben php daha hızlı ve çok daha basit olduğunu biliyorum, ancak projeler çok temalar ile çok büyük büyüdüğünde, genellikle templating kullanmak için daha basittir. –

+0

"projeler çok büyür", "kendi şablonlama sisteminizi yuvarlamaya" neden olmamalıdır. Denenmiş ve güvenilir şablonlama sistemlerinden birini kullanamıyorsanız, kendinizin iyi bir fikir oluşturduğundan şüpheliyim. –

+0

@user Kendiliğinden yatan motoru kendiniz yazıyorsanız kesinlikle daha kolay değil – Phil

İlgili konular