Stephan: Remote File unter Windows

Hallo.
Ich möchte aus einem PHP Script heraus eine anderes Script aufrufen und das Ergebniss weiter verarbeiten.
Im Prinzip ganz so wie es das Dok unter include beschreibt:

return.php
<?php

$var = 'PHP';

return $var;

?>

?php

$foo = include 'return.php';

echo $foo; // gibt 'PHP' aus

Nun handelt es sich aber um eine entfernte Datei. Und include arbeitet unter Windows nicht mit entfernten Dateien. Leider kann ich auch von der aufrufenden Datei nicht auf die Variable $var zugreifen (NULL).
In $foo steht lediglich eine "1"...was scheinbar nur signalisiert das der Aufruf von include erfolgreich war.
Auf welchem Weg schaffe ich es aus meiner lokalen php eine entfernte php aufzurufen und das Ergebniss zu verarbeiten, oder aber auf die Variablen direkt zugreifen zu können?

Gruß
Stephan

  1. Hi,

    Auf welchem Weg schaffe ich es aus meiner lokalen php eine entfernte php aufzurufen und das Ergebniss zu verarbeiten, oder aber auf die Variablen direkt zugreifen zu können?

    Wenn du nur das Ergebnis der entfernten Datei ausgeben willst (also nicht den PHP-Quellcode, was auch nicht möglich ist bei einer entfernten), dann könntest du es mal mit socket_open oder so ähnlich mal probieren. Einfach mal googlen.

    Gruß
    Marius

  2. echo $begrüßung;

    Ich möchte aus einem PHP Script heraus eine anderes Script aufrufen und das Ergebniss weiter verarbeiten.
    Nun handelt es sich aber um eine entfernte Datei. Und include arbeitet unter Windows nicht mit entfernten Dateien.

    Das ist kein Windows-Problem sondern allgemein üblich. Wie verhält sich denn dein lokaler Server, wenn du da eine PHP-Ressource anforderst? Er lässt sie ausführen und gibt die vom Script erzeugte Ausgabe an den Aufrufer. Genau das gleiche macht der entfernte Server. Du erhältst nur die Ausgabe, keinerlei Variableninhalte oder sonstige Sctipt-Interna.

    Auf welchem Weg schaffe ich es aus meiner lokalen php eine entfernte php aufzurufen und das Ergebniss zu verarbeiten, oder aber auf die Variablen direkt zugreifen zu können?

    Das Ergebnis ist die erzeugte Ausgabe des entfernten Scripts. Auf dessen Variablen kann man in keinem Fall zugreifen. Du kannst nur dessen Inhalt ausgeben und die Ausgabe auswerten.
    Oder aber, du lässt vom Server den PHP-Quelltext nicht ausführen sondern unbearbeitet ausliefern, dann kann dein lokales Script diesen inkludieren und lokal ausführen. Aber sowas mag man im Allgemeinen nicht, ist das doch eine mögliche Lücke, um fremden Code in dein lokales Script einzuschleusen.

    echo "$verabschiedung $name";