Skapa ett mall -system i PHP är mycket användbar . En mall systemet separerar verksamheten och display logik och håller koden väl separerade , lättare att dokumentera och testa och mer hanterbar . Detta åstadkoms genom att hålla affärslogik , t.ex. databasfrågor och databehandling , och display -kod i separata filer . När affärslogik fil körs , det tar hand om alla logik och , istället för att visa HTML-koden direkt laddar displayen filen och skickar den datan för den till format och display. Instruktioner
1
Skapa en ny fil och öppna den med en textredigerare . ? Kopiera och klistra in koden nedan i filen och spara den som " . Template.php "
< php
klassmall {
offentliga $ värden ;
allmänheten $ file ,
public function __ construct ( $ file = '' , $ värden = array ( ) ) {
$ this - > file = $ file ;
$ this-> värden = $ värden ,
}
public function output ( ) {
ob_start ( ) ;
inkluderar ( $ this - > file ) ;
$ ut = ob_get_clean ( ) ;
echo $ ut ,
} }
2
Skapa en ny fil och öppna den med en textredigerare . I början av filen , kör PHP : s " require_once " funktionen med " template.php " som parameter . Kör ditt affärslogik som du gör på en vanlig sida . Skapa en ny " mall " objekt med hjälp av PHP : s " nya " syntaxen med sökvägen till displayen sida som parameter . Ställ in " Template " objektets " värden " egendom med värden som ska skickas till displayen sidan . Mata ut visningen sidan genom att anropa objektets "output "-metoden . Här är ett exempel :
< php
require_once " template.php " ,
//... ? Logiken här
$ mall = ny mall ( ' layout.php ');
$ template- > värden [ ' title ' ] = " Min sida " ;
$ template- > värden [ ' namn ' ] [ ] = " Jacob " ,
$ template- > värden [ ' namn ' ] [ ] = " John " ,
$ mall - > -värden [ ' namn ' ] [ ] = " Tony " ,
$ template- > utgång ( ) ;
3
displayen koden , skapa en ny fil med det namn som används i föregående steg , och öppna filen med en textredigerare . Skriv kod för att formatera och visa de värden som den affärslogik sidan . Värdena lagras i " $ this-> värden . " Här är ett exempel : < ? Php echo $ this - > ?
Värden [ ' title ' ] ; > < /h1 >
namn < /h2 >