【发布时间】:2018-10-03 23:05:16
【问题描述】:
我想写和复制一个文件。而且我在写入和复制文件时需要echo 值。
请检查我的代码:
<?php
$pages = array("story1", "story2", "story3","story4","story5","story6");
$length = count($pages);
for($i=0;$i<$length;$i++){
$myFile = "newfile-in-{$pages[$i]}.php";
if (file_exists($myFile)) {
echo copy("expcontent.php","newfile-in-{$pages[$i]}.php");
}else{
$myfile = fopen("newfile-in-{$pages[$i]}.php", "w") or die("Unable to open file!");
$txt = "Mickey {$pages[$i]}\n";
fwrite($myfile, $txt);
$txt = "Hello Mouse\n";
fwrite($myfile, $txt);
}
}
在我的expcontent.php:
<p>Kids <?php echo $pages[$i];?>!</p>
一切正常。新文件已创建并已完美复制文件。但输出是:
Kids, !
Kids, !
Kids, !
Kids, !
Kids, !
预期输出:
Kids Story1!
Kids Story2!
Kids Story3!
Kids Story4!
Kids Story5!
Kids Story6!
我没有得到正确的输出,或者我认为$pages[$i] 的值在expcontent.php 上。
请检查我的代码并纠正我。 欢迎任何想法或建议。 谢谢。
【问题讨论】:
-
复制文件不会执行其中的 PHP。它只是逐字复制。
-
看起来您正在尝试实现某种模板系统。有许多库和框架可以做到这一点,您应该使用其中之一,而不是尝试使用自己的。
-
@Barmar 感谢您的回复!在写文件的时候?在写文件的同时,我们可以写孩子们的故事1!如果是怎么办?
-
@RachelGallen 只要PHP下面没有HTML/CSS等,就不需要使用
?>结束标签。 -
@FunkFortyNiner 啊对。错过了。谢谢。