Ankündigung

Einklappen
Keine Ankündigung bisher.

Wie kann ich den den Rückgabe-Text eines PHP-Skriptes einer PHP-Variablen zuweisen?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie kann ich den den Rückgabe-Text eines PHP-Skriptes einer PHP-Variablen zuweisen?

    Aus einer HTML-Datei geht das einfach:
    PHP-Code:
    $meineVariable file_get_contents("meineDatei.htm"); 
    Wenn ich jedoch schreibe
    PHP-Code:
    $meineVariable file_get_contents("meinSkript.php"); 
    wobei das Skript meinSkript.php z.B. lautet:
    PHP-Code:
    DIES IST ETWAS WORTLAUT RUNDHERUM
    <?php
    echo 'Und dies ist Wortlaut, der im PHP-Skript erzeugt wird';
    ?>,
    dann enthält $meineVariable leider nur
    PHP-Code:
    DIES IST ETWAS WORTLAUT RUNDHERUM 
    – der mit echo wiedergegebene Wortlaut kommt nicht rüber.

    Was mache ich falsch?

  • nikosch
    antwortet
    Ich mags nur nicht, wenn sich Threads bis zum 60. Posting stetig im Kreis drehen.

    Einen Kommentar schreiben:


  • Paul.Schramenko
    antwortet
    Ja mache ich, hab den einen Beitrag übersehen. Kein Grund zickig zu werden

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    @Paul.Schramenko: Liest Du auch fremde Beiträge? Das hat er doch oben gemacht..!

    Einen Kommentar schreiben:


  • cetalian
    antwortet
    nikosch hat doch schon alles gesagt, include das Script, buffer seinen output und ließ den buffer dann aus?

    Einen Kommentar schreiben:


  • Paul.Schramenko
    antwortet
    meinst du sowas?

    myIncludeFile.php
    PHP-Code:
    <?php
    /*
     * Diverser Quellcode...
     */

    return $var;
    deine Datei die das ergebis erwartet
    PHP-Code:
    <?php

    $resFromInclude 
    = include('myIncludeFile.php');       # Hier steht nur $var aus dem Include drin;

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Habe doch oben zwei Varianten gepostet? Oder was meint für Dich „gesamtes Skript-Ergebnis“

    Einen Kommentar schreiben:


  • Detlef
    antwortet
    Zitat von nikosch Beitrag anzeigen
    ... Oben hast Du noch etwas anders gefragt ...
    Das ist richtig.
    Die gewünschte Übergabe des gesamten Skript-Ergebnisses an die Variable $gerechneteKette habe ich mit include() nicht hinbekommen.

    Einen Kommentar schreiben:


  • BlackJack01090
    antwortet
    Zitat von Detlef Beitrag anzeigen
    Man sagt, daß "eval" "evel" (übel, böse) sei, weil "eval" angeblich eine Sicherheitslücke ist. Frag mich nicht, wie.
    Danke für den Hinweis

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Dass ist ziemlicher Unsinn. Die Ausgabe funktioniert so nur, weil das include an der richtigen Stelle steht. Oben hast Du noch etwas anders gefragt. Auf das return könntest Du auch locker verzichten, denn nach dem Include steht $ZeileDrei dem einbindenden Script sowieso zur Verfügung. „XXX Diese Zeile kommt nicht mit.“ ist auch nicht verwunderlich, das ist immer der Fall nach einem return - Include oder nicht.

    [edit]
    Man sagt, daß "eval" "evel" (übel, böse) sei, weil "eval" angeblich eine Sicherheitslücke ist. Frag mich nicht, wie.
    Es heißt „evil“. Zugegeben im Vergleich zu einem „offenen“ Include ergeben sich kaum Unterschiede. Trotzdem ist zu sagen:

    - eval kann zum Abbruch einer Applikation führen
    - eval ist schwer zu debuggen

    Einen Kommentar schreiben:


  • Detlef
    antwortet
    Zitat von BlackJack01090 Beitrag anzeigen
    Okay. Darf ich fragen, wieso man eval nicht verwenden soll?
    Man sagt, daß "eval" "evel" (übel, böse) sei, weil "eval" angeblich eine Sicherheitslücke ist. Frag mich nicht, wie.

    Einen Kommentar schreiben:


  • Detlef
    antwortet
    Übergabe einer PHP-Skript-Rückgabe an eine Variable

    Mir scheint, nun habe ich es:

    Hier wird ein Textteil errechnet:
    PHP-Code:
    <?php
    #########################
    ##  meinSkript.php
    ######################### 
    ?>
    222 Dies ist Zeile zwei. <br>
    <?php
    $ZeileDrei 
    "333 Und dies ist Zeile drei, die im PHP-Skript erzeugt wird.<br>\n";
    return 
    $ZeileDrei;
    ?>
    XXX  Diese Zeile kommt nicht mit.
    Und hier wird das Skript-Ergebnis geholt und mit echo ausgegeben:
    PHP-Code:
    <?php
    #########################
    ##   hole.php
    #########################   
    ?>

    111 Dies ist Zeile eins.<br>
    <?php
    $gerechneteKette 
    = include("meinSkript.php");
    echo 
    $gerechneteKette;
    ?>
    444 Dies ist Zeile vier. <br>
    Ausgabe:
    PHP-Code:
    "
    111 Dies ist Zeile eins.
    222 Dies ist Zeile zwei. 
    333 Und dies ist Zeile drei, die im PHP-Skript erzeugt wird.
    444 Dies ist Zeile vier." 
    Für include("meinSkript.php") ist es also wichtig, daß der errechnete Wortlaut mit return zurückgegeben wird.
    Allerdings: Nicht das gesamte PHP-Skript-Ergebnis (wie Apache oder Kommandozeile es abliefern würden) wird übergeben. Doch immerhin kann ich mir hiermit helfen.

    Danke für Deine Hinweise!

    Einen Kommentar schreiben:


  • BlackJack01090
    antwortet
    Okay. Darf ich fragen wieso man eval nicht verwenden soll?

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Bitte nicht eval! Ich habe zwei gute Varianten aufgezeigt.

    Einen Kommentar schreiben:


  • BlackJack01090
    antwortet
    Muss es in einer externen Datei stehen? Ansonsten wäre auch [MAN]eval[/MAN] was für dich.

    Gruß

    BJ01090

    Einen Kommentar schreiben:

Lädt...
X