如何使用php保存文本文件中的内容

时间:2014-01-16 10:56:38

标签: php

当我点击提交按钮时,我想将内容保存在不同的文件中 例如,如果我第一次点击文件名应该是1.1.txt 如果我第二次点击我想要在1.2.txt,第三次1.3.txt等中保存内容。
所以每次单击提交按钮时文件名应该不同

这是我的代码,这段代码错了..

<?
$a_str = array($_POST["content"]);
$a_url = $_POST["url"];
 $contents = implode(PHP_EOL ,$a_str);
$contents .= PHP_EOL .PHP_EOL;
$d='1.1';

for ($n=0; $n<6; $n++) {
 file_put_contents($d.txt, $contents);
 $d='1.'+$n;
 }
print("$contents");
?>

请帮帮我怎么做?

2 个答案:

答案 0 :(得分:0)

您可以在会话中保存当前值。试试这个

session_start();

if (empty($_SESSION['count']))
    $_SESSION['count'] = 1;
else
    $_SESSION['count']++;

$contents = implode(PHP_EOL, array($_POST['content']));
file_put_contents('1.'.$_SESSION['count'].'.txt', $contents);

print($contents);

答案 1 :(得分:0)

试试这个,每次保存内容时,计数器增加一个。计数器保存文件名。这种方式比使用会话或cookie更安全,因为这样,如果您的会话或cookie过期,计数器将被重置,旧文件将被覆盖

$a_str = array($_POST["content"]);
$a_url = $_POST["url"];
$contents = implode(PHP_EOL, $a_str);
$contents .= PHP_EOL . PHP_EOL;
$filename = file_get_contents("counter.txt");
$counter = file_exists('counter.txt') ? file_get_contents("counter.txt")+1 : 1 ;
file_put_contents("1.".$counter.".txt",$contents);
file_put_contents("counter.txt",$counter);