Ankündigung

Einklappen
Keine Ankündigung bisher.

Fwrite Variabel als wert angezeigt nicht als Variabel

Einklappen

Neue Werbung 2019

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

  • Fwrite Variabel als wert angezeigt nicht als Variabel

    Hallo,
    wieder mal mit einer wahrscheinlich sehr einfachen frage, auf dennsen lösung ich nicht komme

    also ich hab ein script erstellt der soll die config.php bei mir neu schreiben, funktioniert auch soweit wie ich es möchte, aber wen der speichert, zeigt mir die Variabel als Text sondern als wert.

    Schript:
    PHP-Code:
    $fp = fopen('config.php', 'w');
        fwrite($fp, "<? \n
        // SQL DATENBANK \n
        $SQL_HOST = '".$SQL_HOST."';
         \n $SQL_USER = '".$SQL_USER."';
         \n $SQL_PASS = '".$SQL_PASS."';
         \n $SQL_BASE = '".$SQL_BASE."';
          \n ?>");
        fclose($fp);
        echo "Der SQL-Zugang wurde gespeichert";
    und foldendes erscheint dann unerwünschter weise :
    <?

    // SQL DATENBANK

    localhost = 'localhost';

    root = 'root';

    = '';

    db1066687 = 'db1066687';

    ?>
    Vor dem '=' soll aber die Variabel stehen ?

    Danke für eure hilfe im vorraus

  • #2
    Zitat von Doctor_Who Beitrag anzeigen
    Hallo,
    wieder mal mit einer wahrscheinlich sehr einfachen frage, auf dennsen lösung ich nicht komme

    also ich hab ein script erstellt der soll die config.php bei mir neu schreiben, funktioniert auch soweit wie ich es möchte, aber wen der speichert, zeigt mir die Variabel als Text sondern als wert.

    Schript:
    PHP-Code:
    $fp = fopen('config.php', 'w');
        fwrite($fp, "<? \n
        // SQL DATENBANK \n
        $SQL_HOST = '".$SQL_HOST."';
         \n $SQL_USER = '".$SQL_USER."';
         \n $SQL_PASS = '".$SQL_PASS."';
         \n $SQL_BASE = '".$SQL_BASE."';
          \n ?>");
        fclose($fp);
        echo "Der SQL-Zugang wurde gespeichert";
    und foldendes erscheint dann unerwünschter weise :


    Vor dem '=' soll aber die Variabel stehen ?

    Danke für eure hilfe im vorraus

    Kommentar


    • #3
      Hallo,

      Das liegt daran, dass wenn du ein String in Double-Quotes (") hast, die daran vorhandenen Variablen ausgewertet werden.
      Du kannst entweder das Dollar-Zeichen maskieren und weiterin " verwenden oder du verwendest Single-Quotes (').

      PHP-Code:
      fwrite($fp, '<?
      // SQL DATENBANK
      $SQL_HOST = "'.$SQL_HOST.'";
      $SQL_USER = "'.$SQL_USER.'";
      $SQL_PASS = "'.$SQL_PASS.'";
      $SQL_BASE = "'.$SQL_BASE.'";
      ?>');
      Gruss, Timo

      Kommentar


      • #4
        Schreiben
        PHP-Code:
        file_put_contents('config.php''<'.'?'.'php return '.var_export(array(
           
        'SQL_HOST' => $SQL_HOST,
           
        'SQL_USER' => $SQL_USER,
           
        'SQL_PASS' => $SQL_PASS,
           
        'SQL_BASE' => $SQL_BASE
        ), true).';'); 
        Laden
        PHP-Code:
        extract(include 'config.php'EXTR_OVERWRITE); 

        Kommentar

        Lädt...
        X