PHP-Datei einlesen und splitten
scorn
- php
Hallo,
ich möchte auf meiner HP, eine PHP-Datei (welche wird aus der URI gelesen) parsen und dann in Head und Body splitten, das mach ich mit explode und soweit komm ich noch alleine:
<?php
if(isset($_GET['will']) AND $_GET['will']!="") {
if(file_exists($will.".html")) {
$content = file_get_contents($will.".html");
}
elseif(file_exists($will.".php")) {
$content = include($will.".php"); // das geht nicht
}
else {
$will = "not found";
$content = file_get_contents("notfound.html");
}
}
else {
$will = "start";
$content = file_get_contents("start.html");
}
$content = explode('</head><body onLoad="init()">',$content);
echo $content[0];
?>
</head><body onLoad="init()">
<!-- Statisches Zeugs -->
<?php echo $contents[1]; ?>
Ich kann also nicht mit include() die Datei erst in eine Variable lesen und dann splitten, aber mit file_get_contents oder fgets oder so, parse ich den Code ja nicht.
Wie kann ich also eine Datei geparset in einen String lesen und dann splitten?
Es geht natürlich auch sie erst zu splitten und dann zu parsen, ich weiß aber auch nicht, wie das geht...
vielen Dank für alle Hilfe,
scorn
Halihallo scorn
ich möchte auf meiner HP, eine PHP-Datei (welche wird aus der URI gelesen) parsen und dann in Head und Body splitten, das mach ich mit explode und soweit komm ich noch alleine:
Was meinst du mit "parsen"? - Meinst du damit "das Script Ausführen und dessen Ausgabe
weiterverarbeiten"?
Ich kann also nicht mit include() die Datei erst in eine Variable lesen und dann splitten, aber mit file_get_contents oder fgets oder so, parse ich den Code ja nicht.
Ja, so lädst du nur den Sourcecode des Scripts.
Wie kann ich also eine Datei geparset in einen String lesen und dann splitten?
Wenn ich dich richtig verstanden habe:
a) Das Script über $fh=open('http://www.dein-server.de/script.php') einlesen und dann
über Stringmanipulator-funktionen behandeln (achtung, verschwendet Transfer).
b) Das Script über include inkludieren lassen und dessen Ausgabe über
http://ch.php.net/manual/de/function.ob-start.php abfangen.
Viele Grüsse
Philipp
Halihallo scorn
[...]
BTW: Ich verstehe den Sinn dieser Aktion nicht. Was willst du tun?
Wenn es nur darum geht ein anderes Script einzulesen, den Body zu filtern, da das
"Server-Script" den HTML-Header bereits ausgegeben hat, würde ich dir wärmstens
empfehlen mit einem 301-er Redirect auf das andere Script zu verweisen, das wäre IMHO
die wesentlich intelligentere Umsetzung, denn was wird wohl passieren, wenn du man ein
neues Attribut in body definierst, oder ein Script sich nicht ganz an deine Definition
von HTML hält? - Programmiertechnisch ist das andere Unfug. Programmoutput ist Output
und soll nicht noch weiter behandelt werden müssen...
Viele Grüsse
Philipp