Frage

Ich frage mich, ob es möglich ist, PHP-Code in eine Datei zu schreiben. Zum Beispiel:

fwrite($handle, "<?php $var = $var2 ?>");

Ich mag es die genaue Zeichenfolge in der Datei erzeugen und nicht der eval'ed Code. Ist das möglich?

Ich bin derzeit immer die folgende Ausgabe (wobei $ var = 1 und var2 $ = 2):

<?php 1 = 2 ?>

Während ich mag die tatsächliche Zeichenfolge:

<?php $var = $var2 ?>

Danke für die Hilfe

War es hilfreich?

Lösung

Sie können einfache Anführungszeichen statt doppelte Anführungszeichen verwenden, die nicht erweitern Inline-Variablennamen:

fwrite($handle, '<?php $var = $var2 ?>');

Andere Tipps

Just entkommen das Symbol $

<?php
fwrite($handle, "<?php \$var = \$var2 ?>");
?>

Doppel werden Strings in Anführungszeichen für Variablen analysiert, und der Variablen Wert an dieser Position eingefügt. Ich vermute, dies liegt daran, dass PHP ursprünglich als dünne Webserver-Datenbank Templat-Schicht entwickelt wurde.

persönlich, Ich mag nicht, dass und verwenden nie doppelte Anführungszeichen, weil dieser. Stattdessen verwende ich immer einfache Anführungszeichen und String concenation:

<?php echo 'hello, ' . $name; ?>

macht das gleiche wie:

<?php echo "hello, $name"; ?>

Apostrophe: Syntax-Einfärbung funktioniert besser, es ist (geringfügig) schneller und Fehler leichter gefunden

Das hat nichts mit Datei io zu tun. Lesen Sie mehr über die Variablensubstitution und Flucht in Strings in PHP.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top