Justering ved view-klasse
Hej jeg har lavet nedenstående klasse, men hvis eksempelvis $filename ikke eksisterer, så er variablen blot tom, men problemet er så, at den vil melde fejl, da den ikke kan inkludere en fil, der ikke eksisterer. Jeg kan selvfølgelig bruge die() eller kaste en exception eller lignende hvis filen ikke eksisterer, men jeg vil forsøge at lave scriptet, så der blot ikke sker noget hvis noget ikke fungerer. Altså at der bare ikke bliver udskrevet noget som helst.Hvordan skal det laves smartest?
<?php
final class View {
private $filename;
private $variables = array();
public function __construct( $filename, $variables = false ) {
if( file_exists( $filename ) ) {
$this->filename = $filename;
if( $variables !== false ) {
$this->variables = $variables;
}
}
}
private function render( $filename ) {
ob_start();
extract( $this->variables, EXTR_SKIP );
include( $filename );
return ob_get_clean();
}
public function __toString() {
return $this->render( $this->filename );
}
}
?>
