floater: per FILE() php-datei auslesen

Hallo,

ich möchte aus einer Datei per FILE() eine externe php-Datei aufrufen.
Die externe php-Datei berechnet Werte und weist diese Variablen zu un gibt diese per ECHO aus.

Die aufrufende PHP soll diese ausgegebenen Daten auswerten.

Dazu meine folgenden Skripte:

AUFRUFENDES SKRIPT:
<?php
 $storeExternUrl = "fileScript.php";

$callFile = implode('', file($storeExternUrl));
 echo "callFile: ".htmlentities($callFile)."<br>";

// EXTRACT VARS FROM RECEIVED DATAS
  preg_replace("/(returnVar|temp)=([^\r\n]*)/e", '${\1}="\2"', $callFile);

echo "test-returnVar: ".$returnVar."<br>";
  echo "test-temp: ".$temp."<br>";
?>

------------------------

AUFGERUFENES SKRIPT:

<?php
$temp = 3 * 4;

echo "returnVar=hallo\n";
echo "temp=".$temp."\n";
?>

------------------------

Das Auslesen der Werte ergibt dann folgende Ausgabe:

test-returnVar: hallo\n";
test-temp: ".."\n";

Es sollte aber fognedes herauskommen:

preg_replace("/(returnVar|temp)=([^\r\n]*)/e", '${\1}="\2"', $callFile);

echo "test-returnVar: ".$returnVar."<br>";
  echo "test-temp: ".$temp."<br>";
?>

------------------------

AUFGERUFENES SKRIPT:

<?php
$temp = 3 * 4;

echo "returnVar=hallo\n";
echo "temp=".$temp."\n";
?>

------------------------

Das Auslesen der Werte ergibt dann folgende Ausgabe:

test-returnVar: hallo";
test-temp: 12;

Wie erreiche ich das, bzw. wo liegt in meinem Skript der Fehler?

Gruß,
Floater

  1. Hi,

    ich möchte aus einer Datei per FILE() eine externe php-Datei aufrufen.

    also eine Ressource, nämlich das, was ein Server liefert. file() dient dazu, eine *Datei* auszulesen, also das, was *nicht* von einem Server geliefert wird.

    Die externe php-Datei

    ... ist aber sowas von intern, interner geht's nimmer. Wenn Du etwas Externes haben willst, so ist es keine Datei, sondern eine Ressource. Sprich diese unter Verwendung einer der passenden Funktionen an, beispielsweise fopen().

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hello,

      also eine Ressource, nämlich das, was ein Server liefert. file() dient dazu, eine *Datei* auszulesen, also das, was *nicht* von einem Server geliefert wird.

      Seit wann sind File-Server keine Server mehr? *tztz*

      Du meintest sicher "nicht von einem HTTP-Server" geliefert wird...

      Harzliche Grüße vom Berg
      http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau

    2. Hallo,

      Die externe php-Datei

      ... ist aber sowas von intern, interner geht's nimmer. Wenn Du etwas » Externes haben willst, so ist es keine Datei, sondern eine Ressource.

      Ja sicher ist die im Beispiel genannte Datei intern, aber halt eben nur im Beispiel. Es soll wirklich eine externe Datei aufgerufen werden.

      Gruß,
      Floater

      1. hi,

        Die externe php-Datei

        ... ist aber sowas von intern, interner geht's nimmer. Wenn Du etwas » Externes haben willst, so ist es keine Datei, sondern eine Ressource.

        Ja sicher ist die im Beispiel genannte Datei intern, aber halt eben nur im Beispiel. Es soll wirklich eine externe Datei aufgerufen werden.

        Dass damit das, was du "ausliest", etwas ganz anderes sein wird, solltest du dir erst mal klar machen.

        Beim Zugriff über HTTP wird die php-Datei geparst.
        Wenn du lediglich lokal über's Dateisystem darauf zugreifst, dann nicht.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Hallo wahsaga,

          Beim Zugriff über HTTP wird die php-Datei geparst.
          Wenn du lediglich lokal über's Dateisystem darauf zugreifst, dann nicht.

          Diese beiden Sätze von Dir sind die Lösung.

          Nachdem ich den Pfad nicht lokal, sondern mittels "http://...." eingefügt habe wurde die Datei geparst und das Ergebnis ist so wie ich es haben möchte.

          Vielen Dank!
          Gruß,
          Floater

  2. Hallo,

    durch die Brust ins Auge ;)
    Warum liest Du die Datei1 Zeilenweise ein file() anstatt sie mit include() oder require() in Datei2 aufzurufen.
    "Einlesen" != "Aufrufen".
    Nach dem Aufrufen jedenfalls stünden Dir die Variablen aus Datei1 in Datei2 ebenso zur Verfügung.

    netten Tag
    ^da Powl

    --
    ===============================
    powl.hat-gar-keine-homepage.de/
    1. Hallo,

      Warum liest Du die Datei1 Zeilenweise ein file() anstatt sie mit include() oder require() in Datei2 aufzurufen.
      "Einlesen" != "Aufrufen".

      Weil erstens die Datei NICHT includiert werden soll, sondern ein externes Script aufgerufen werden soll.

      Gruß,
      Floater