我有一个复杂的php4代码,想要使用file_put_contents
在文件中写入内容,如下所示:
$iCounter = 0;
foreach blah...
... code
file_put_contents("/tmp/debug28364363264936214", "test" . $iCounter++ . "\n", FILE_APPEND);
...code
我正在使用FILE_APPEND
将数据附加到给定文件中,我确信我打印的内容不包含控制字符,随机数序列确保文件不在任何其他上下文中使用,并且计数器变量(仅用于打印输出)用于控制调用file_put_contents
的频率。
执行代码并查看我刚才看到的文件内容
test8
虽然我希望看到
test1
test2
test3
test4
test5
test6
test7
test8
我的语法有问题吗?也许代码不适用于php4?我还能用什么呢?
P.S。我正在开发一个非常大的,相当古老的php4项目,所以没有办法在php5中重新编码项目。不到2年......
答案 0 :(得分:2)
你可以使用foreach它有一个数组输入它将是一个similuar程序
for ($iCounter = 1; $iCounter <= 10; $iCounter++) {
$test_var .= "test" . $iCounter . PHP_EOL;
}
if (file_exists("/tmp/debug28364363264936214")) {
file_put_contents("/tmp/debug28364363264936214", $test_var, FILE_APPEND);
echo "The file was written";
} else {
echo "The file was not written";
}
php4代码
if (file_exists("/tmp/debug28364363264936214")) {
$fp = fopen('/tmp/debug28364363264936214', 'a');
fwrite($fp, $test_var);
fclose($fp);
echo "The file was written";
} else {
echo "The file was not written";
}
您的代码可能在php4中,但如果使用php5,它应该在php5中工作。你只需要重新编码错误。
答案 1 :(得分:2)
使用fopen();
file_put_contents()
是php5。
$file = fopen("/tmp/debug28364363264936214", "a+");
fwrite($file, "test" . $iCounter++ . "\n");
fclose($file);
答案 2 :(得分:0)
如果您想附加数据,请执行以下操作
$file = "yourfile.txt";
$data = file_get_contents($file);
$data = $data . $newdata;
file_put_contents($file, $data);