dedlfix: Template - Sicherheit

Beitrag lesen

echo $begrüßung;

$template = file_get_contents("templates/header.html");

[...] // Hier Platzhalter ersetzen
echo $template;


>   
> Meine Frage ist: Wie sicher ist das? Ich will natürlich nicht, dass in das Template z.B. ein get\_defined\_vars() eingeschmugelt wird.  
  
Bei einem echo wird kein PHP-Code ausgeführt. Auch liefert file\_get\_contents() einen Dateiinhalt, ohne ihn zu interpretieren.  
  

> Ich habe bereits probiert, dass ein einfaches  
> ~~~php

<?php  

> print_r(get_defined_vars());?>

im Template nicht funktioniert. Aber gibt es eine andere Möglichkeit, PHP-Code im Template ausführen zu lassen?

Wenn du die Datei auf dem üblichen Wege über include und Konsorten einbindest, wird auch darin enthaltener PHP-Code ausgeführt.

Wenn du dir schon Gedanken über das Einschleusen unerwünschten PHP-Codes machst, musst du sie dir konsequenterweise auch über clientseitigen Code machen, denn der kann so auch unabhängig vom PHP-Code wirken.

echo "$verabschiedung $name";