Archivlink: javarea.de Forum > PHP, MySQL & CGI > Code in eingefügten File ausführen
Vollständigen Link anzeigen: javarea.de Forum > PHP, MySQL & CGI > Code in eingefügten File ausführen

Pages: [1]

geschrieben von Simon am 05.10.2007 - 11:51
Hallo Jungs

Ich habe folgendes Problem: Ich habe eine Klasse "Content", die mir den jeweiligen Inhalt aus einer Datenbank oder aus einem File ausliest.
Wenn es den Inhalt aus einem (html-)File ausliest, so kommen auch PHP-Codefragmente in diesem vor. Nur werden die nicht intepretiert.

Codeausschnitte
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 

<?
class Content
  
private m_content null;
...
  public function 
loadHTMLFile($path)
    {
      
$this->m_content file_get_contents($path); // <-- Hier wird das File eingelesen
    
}

  public function 
getContent()
  {
    return 
$this->m_content;
  }
?>



HTML-File
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 

<?php $bla "Hallo"?>
...
<b><?php echo $bla ?></b><br />
...


Per file_get_contents wird der Inhalt in einen String eingelesen, daher php-Code wird nicht mehr intepretiert.
Lösungsansätze: Der ganze Inhalt im HTML-File in eine Variable definieren. In der Content-Klasse per require einbinden und das $this->content abfüllen mit der Variable aus dem HTML-File.
Gefällt mir aber überhaupt nicht. Gibt es da eine besser Möglichkeit?

Viele Dank
Simon

geschrieben von okley am 05.10.2007 - 12:01
Sehe ich das richtig, dass du also in deiner Content Klasse externe code fragmente einlesen möchtest und dann den interpretierten code in einer Variable speichern um später auszugeben?
Falls dem so ist:
http://www.webmaster-eye.de/include ,40,41,59,in,Variable,umleiten.210.artikel.html

geschrieben von Simon am 05.10.2007 - 12:09
Genau das habe ich gesucht!
Merci

geschrieben von Matneu am 07.10.2007 - 00:42
Suchst Du vielleicht eval()?

So far...
Matthias


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.