Templates?

PHP

9 svar · 332 visningar · startad av Alpha II

Medlem sedan maj 20002 993 inlägg
Trådstart#1

Vad är en template? (eller vad det nu heter)

Medlem sedan jan. 20007 697 inlägg
#2

En mall? :)

Medlem sedan jan. 2001135 inlägg
#3

Nej ingen chat, typ ICQ små medelanden bara. med popup eller blinkande gif när man få ett nytt.

Medlem sedan juni 20001 251 inlägg
#4

huh?

------------------
SteveNet

Medlem sedan jan. 20007 697 inlägg
#5

Nog för att han heter mall, men det där inlägget kom nog i fel tråd. :)

Medlem sedan maj 20001 953 inlägg
#6

Det är en mall som man har så att man skall slippa att skriva om samma kod flera gånger. Ofta funkar det också så att man helt separerar Html koden från PHP koden. Du behöver alltså inte en massa satser med echo som skriver ut den Html koden som krävs utan du gör en mall till koden istället och fyller den med det som PHP koden genererar.

Medlem sedan jan. 20012 204 inlägg
#7

Något exempel?

Medlem sedan maj 20002 993 inlägg
#8

Så en template är vad man kallar en sida som ser ut som typ:

<html>
<head>
<title>alpha02</title>
</head>
<body>
<?php
include("begin.inc");
?>
hej hej hej
<?php
include("end.inc");
?>
</body>
</html>

Medlem sedan mars 20007 896 inlägg
#9

Njaa, nästan :)

En template är som sagt en mall för flera sidor, där man använder samma sida, fast hämtar info från olika sidor. Nästan som du gjorde Alpha...

<html>
<head>
<title>alpha02</title>
</head>
<body>
<?php
include($begin . ".inc");
?>
hej hej hej
<?php
include($end . ".inc");
?>
</body>
</html>

Den sidan är en template och hämtar infp från olika sidor, beroende på vilka man anger i variablerna $begin och $end. Ett enkelt exempel är om man skulle skicka med querystringsen $begin och $end med olika filnamn, där man lämnat ute filändelsen (.inc).

T.ex.:
minFil.php?begin=startsida&end=slutsida

Medlem sedan maj 20001 953 inlägg
#10

Här kommer ett exempel på hur man kan använda templates. Detta är med FastTemplate och är saxat direkt från denna sidan: http://www.thewebmasters.net/php/FastTemplate.phtml

Har läst på lite om FastTemplate och det är i alla fall en teknik som jag kommer använda mig av i mina kommande projekt. Just därför det separerar Html koden från PHP koden så fint!
Jaja, här kommer koden:

<!-- NAME: main.tpl -->
  <html>
  <head><title>{TITLE}</title>
  </head>
  <body>
  {MAIN}
  </body>
  </html>
  <!-- END: main.tpl -->
 
 
  <!-- NAME: table.tpl -->
  <table>
  {ROWS}
  </table>
  <!-- END: table.tpl -->
 
 
  <!-- NAME: row.tpl -->
  <tr>
  <td>{NUMBER}</td>
  <td>{BIG_NUMBER}</td>
  </tr>
  <!-- END: row.tpl -->
Now we can start coding... 

 /* START */

    <?
    include("class.FastTemplate.php3");
    $tpl = new FastTemplate("/path/to/templates");
    $tpl->define( array( main   => "main.tpl",
                         table  => "table.tpl",
                         row    => "row.tpl"    ));

    $tpl->assign(TITLE,"FastTemplate Test");

    for ($n=1; $n <= 3; $n++)
    {
        $Number = $n;
        $BigNum = $n*10;
        $tpl->assign( array(  NUMBER      =>  $Number,
                              BIG_NUMBER  =>  $BigNum ));

        $tpl->parse(ROWS,".row");
    }
    $tpl->parse(MAIN, array("table","main"));
    Header("Content-type: text/plain");
    $tpl->FastPrint();
    exit;
    ?>

  When run it returns:

  <!-- NAME: main.tpl -->
  <html>
  <head><title>FastTemplate Test</title>
  </head>
  <body>
  <!-- NAME: table.tpl -->
  <table>
  <!-- NAME: row.tpl -->
  <tr>
  <td>1</td>
  <td>10</td>
  </tr>
  <!-- END: row.tpl -->
  <!-- NAME: row.tpl -->
  <tr>
  <td>2</td>
  <td>20</td>
  </tr>
  <!-- END: row.tpl -->
  <!-- NAME: row.tpl -->
  <tr>
  <td>3</td>
  <td>30</td>
  </tr>
  <!-- END: row.tpl -->
  
  </table>
  <!-- END: table.tpl -->

  </body>
  </html>
  <!-- END: main.tpl -->
273 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
138 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
137 ms — ändringar (db)