PHP Classes

File: view/recursiveview.php

Recommend this page to a friend!
  Classes of stefan   PHP XML Converter   view/recursiveview.php   Download  
File: view/recursiveview.php
Role: Class source
Content type: text/plain
Description: Class source
Class: PHP XML Converter
Transform Indesign to eBundesanzeiger XML format
Author: By
Last change:
Date: 1 year ago
Size: 1,672 bytes
 

Contents

Class file image Download
<?php
class View{

   
// Pfad zum Template
   
private $path = 'templates/recursivetemplates';
   
// Name des Templates, in dem Fall das Standardtemplate.
   
private $template = 'overview';

   
/**
     * Enthält die Variablen, die in das Template eingebetet
     * werden sollen.
     */
   
private $_ = array();

   
/**
     * Ordnet eine Variable einem bestimmten Schl&uuml;ssel zu.
     *
     * @param String $key Schlüssel
     * @param String $value Variable
     */
   
public function assign($key, $value){
       
$this->_[$key] = $value;
    }


   
/**
     * Setzt den Namen des Templates.
     *
     * @param String $template Name des Templates.
     */
   
public function setTemplate($template = 'default'){
       
$this->template = $template;
    }


   
/**
     * Das Template-File laden und zurückgeben
     *
     * @param string $tpl Der Name des Template-Files (falls es nicht vorher
     * über steTemplate() zugewiesen wurde).
     * @return string Der Output des Templates.
     */
   
public function loadTemplate(){
       
$tpl = $this->template;
       
// Pfad zum Template erstellen & überprüfen ob das Template existiert.
       
$file = $this->path . DIRECTORY_SEPARATOR . $tpl . '.php';
       
$exists = file_exists($file);

        if (
$exists){
           
// Der Output des Scripts wird n einen Buffer gespeichert, d.h.
            // nicht gleich ausgegeben.
           
ob_start();

           
// Das Template-File wird eingebunden und dessen Ausgabe in
            // $output gespeichert.
           
include $file;
           
$output = ob_get_contents();
           
ob_end_clean();
               
           
// Output zurückgeben.
           
return $output;
        }
        else {
           
// Template-File existiert nicht-> Fehlermeldung.
           
return 'could not find template';
        }
    }
}
?>