Dennis: php datei als template einlesen

Beitrag lesen

Hi Roger,

<?PHP
$datei = "test2.php";
ob_start();
include($datei);
$inhalt.= ob_get_contents();
ob_end_clean();
?>

  
Das ist mehr als grausam!! Du hast das Grundprinzip von Templates noch nicht verstanden - man verwendet Templates, um die Ausgabe (den HTML-Code) vom Programm (dem PHP-Code) zu TRENNEN, was du da machst ist ein wilder Mix, stattdessen du auch gleich auf Templates verzichten könntest.  
  
  
Beispiel 1:  
  
<p>{$foo}</p>  
<?php echo "Hallo Welt"; ?>  
  
Verwende stattdessen:  
  
<p>{$foo}</p>  
Hallo Welt  
  
  
Beispiel 2:  
  
<p>{$foo}</p>  
<?php if($foo == $bar) echo $entweder; else echo $oder; ?>  
  
Verwende stattdessen:  
  
<p>{$foo}</p>  
{if $foo == $bar}{$etweder}{else}{$oder}{/if}  
  
  
Beispiel 3:  
  
<p>{$foo}</p>  
<?php  
  foreach($foo as $bar) {  
    echo $bar . " ";  
  }  
?>  
  
Verwende stattdessen:  
  
<p>{$foo}</p>  
{foreach from=$foo item="bar"}{$bar} {/foreach}  
  
  
Ich könnte das jetzt hier noch beliebig fortführen - und du würdest sehen, dass ein PHP-Code im Template wirklich vollkommen überflüssig ist, das einzige was zu brauchst ist eine Template-Engine, die so Sachen wie {if} und {foreach} auch interpretieren kann.  
  
Eine Template-Engine, die das alles und noch viel mehr kann, und welche ich dir auch (da ich sie selber nutze) sehr empfehlen kann ist [Smarty](http://smarty.php.net/).  
  
  
MfG, Dennis.

-- 
Mein [SelfCode](http://community.de.selfhtml.org/fanprojekte/selfcode.htm): [ie:{ fl:( br:> va:) ls:\[ fo:) rl:( n4:# ss:) de:\] js:| ch:{ sh:| mo:} zu:|](http://www.peter.in-berlin.de/projekte/selfcode/?code=ie%3A%7B+fl%3A%28+br%3A%3E+va%3A%29+ls%3A%5B+fo%3A%29+rl%3A%28+n4%3A%23+ss%3A%29+de%3A%5D+js%3A%7C+ch%3A%7B+sh%3A%7C+mo%3A%7D+zu%3A%7C)  
[Patch zur Verwendung von PATHINFO in JLog](http://www.gymnasium-odenthal.de/~dennis/jlog/PATHINFO-Fix-1.0.1/)  
  
Man sollte nie aufhören zu fragen. (Albert Einstein)