0

基本的には、htmlタグ/テキストなどをファイルに書き込むことができます。それはすべて大丈夫です。ただし、実際のphpをファイルに書き込むことができる必要があり、これをどのように行うべきか完全にわかりません。

とにかくここに私が私の状況をよりよく示すのを助けるために持っているものがあります:

$path = substr(md5(time() . md5(rand())), 0, 8);
$dir = substr(md5($_SERVER['REMOTE_ADDR']), 0, 4);
$fpath = "b/" . $dir "/" . $path;
$file = 'index.php';

$handle = fopen($fpath . '/' . $file, 'w') or die ('cannot create the file'); 
include template.php;
fwrite($handle, $pt1 . $pt2 . $pt3);

template.php内には、$ pt1、$ pt2、$ pt3に多くのhtmlを保持する変数がありますが、各'pt'の間に実際のphpが必要です。

たとえば、たとえば、各「pt」と$thisの間に$thisが必要だとします。

<?php 
if(isset($_SESSION['user'])){
echo "hello";
}else{
echo "bye";
} 
?>

どうすればいいですか?

*ファイルとパスの実際の作成は問題ありませんが、非常に珍しいように見えるかもしれませんが、私はそれが好きです。phpスクリプトをphpファイルに追加するだけです。

  • また、変数内にスクリプトを貼り付けてみましたが、実行するのではなく、ファイルにプレーンテキストとして出力するようです。
4

1 に答える 1

1

各ptの間は意味し$p1 . $var . $pt2ますか?

次のようなものを試してください。

<?PHP
$var = '<?php 
if(isset($_SESSION["user"])){
echo "hello";
}else{
echo "bye";
} 
?>';
echo $pt1 . $var . $pt2;
?>

編集:

また、を使用して長いコンテンツを変数にラップすることができます

<?PHP
$var = <<< 'PHP'
<?php 
if(isset($_SESSION["user"])){
echo "hello";
}else{
echo "bye";
} 
?>
PHP;
$pt1 = 'before';
$pt2 = 'after';
echo "$pt1 $var $pt2";
?>
于 2013-02-17T20:13:59.973 に答える