-3

fwrite() 関数を使用して PHP ファイルを動的に書き込もうとしていますが、機能していないようです。コードは間違いなく書き込まれている文字列にありますが、書き込まれたファイルを開くと、そこにはありません! 私の推測では、PHP コンパイラーは、何らかの理由で文字列内の PHP タグを読み取り、その間にあるものを実行してから破棄していると思います。この仮定は正確ですか?それを回避するにはどうすればよいですか?

コードは次のようになります。

$code = "<?php echo \"This is a dynamically written file!\"; ?>";
$openFile = fopen("filename.php","w");
fwrite($openFile,$code);
fclose($openFile);

「コード」変数を一重引用符と二重引用符の両方で囲んでみました。

編集:一重引用符を試しましたが、一重引用符で囲まれた変数が二重引用符で囲まれた変数と混ざり合って変換されていました。私はばかげていると感じます。みんなの時間を無駄にしてごめんなさい。

4

5 に答える 5

0

私は同じ問題を抱えていました。絶対パスを使用する必要があることが判明しました。この解決策を参照してください

于 2017-08-24T09:47:32.887 に答える