2017-02-11 24 views
0

このスクリプトを実行すると、予想通りにhtmlページが作成されますが、問題を抱えていますが、例えば$ _GETリクエストなどのアカウント変数が必要です。file_put_contents - カスタム変数を含む

これはスピーチマークの中にあり、file_put_contentsを使用して私のウェブサイト上の新しいページに送られます。私の目的は、送信元のページで可変コードを定義することです。

要するに、ページAIで新しいファイルを作成するコードがあります。ページAIで/ディレクトリ/ to/page /?SET = Hello + from + +のようなファイルを作成し、新しいファイルを作成し、var code = '';私はそれが代わりに要求を取得したいので、それはとなるでしょう。var code = 'Hello from stack';

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset='UTF-8'> 
    <script> var code = '<?php echo $php_variable; ?>';</script> 
    // This is what I'm having trouble with, 
</head> 
<body> 
    <div class='container'> 
    <pre class='code-sample'> 
    <div class='heading'>CODE</div> 
    <div class='code-wrap'> 
     <code></code> 
    </div> 
    </pre> 
</div> 
</body> 
</html> 

これはファイルの作成に使用するコードです。あなたは文字列を含む$GET['SET']を持っていると仮定すると

$file = 'it.html'; 
$data = " 
<!DOCTYPE html> 
<html> 
<head> 
    <meta charset='UTF-8'> 
    <script> var code = 'I WANT THIS TO BE THE VARIABLE $GET I DEFINED FROM PAGE A';</script> 
</head> 
<body> 
    <div class='container'> 
    <pre class='code-sample'> 
    <div class='heading'>CODE</div> 
    <div class='code-wrap'> 
     <code></code> 
    </div> 
    </pre> 
</div> 
"; 

file_put_contents($file, $data); 
+0

'ますfile_put_contents()' 'のprintf()'のようではありません。カスタム変数置換はありません。あなたはそれを望むように文字列を構成し、その文字列を与えます。詳細は[こちら](http://php.net/manual/en/language.types.string.php)でご覧いただけます。 –

答えて

1

その後、あなたは覚えているすべては、あなたが

$_GET[SET]  // without the quotes around the index name 

それとも

{$_GET['SET']} // wrap the array in {}, this is my preference 
として配列を参照のいずれか二重引用符で囲まれた文字列に配列を使用した場合ということです

これはあなたがしたいことをする必要があります

$_GET['SET'] = 'Hello from stack';  // just here for testing 

$file = 'it.html'; 
$data = " 
<!DOCTYPE html> 
<html> 
<head> 
    <meta charset='UTF-8'> 
    <script> var code = '{$_GET['SET']}';</script> 
</head> 
<body> 
    <div class='container'> 
    <pre class='code-sample'> 
    <div class='heading'>CODE</div> 
    <div class='code-wrap'> 
     <code></code> 
    </div> 
    </pre> 
</div> 
"; 

結果

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset='UTF-8'> 
    <script> var code = 'Hello from stack';</script> 
</head> 
<body> 
    <div class='container'> 
    <pre class='code-sample'> 
    <div class='heading'>CODE</div> 
    <div class='code-wrap'> 
     <code></code> 
    </div> 
    </pre> 
</div> 
関連する問題