写入数组文本文件

时间:2014-03-26 13:27:50

标签: php arrays

所以我想用php写一个txt文件。此txt文件包含数组的值。问题是,当我在textfield中写入数组[0]变得更长而不是在数组中添加一个新行(array [1])。我试了3个小时,但找不到任何东西!

<html>
<body>
<form action="arraytest2.php">
  nieuwe regel <input type="text" method = "GET" name="nregel"><br>
  <input type="submit" value="Submit">
</form>


<?php


$file = "./members.txt";
$members = array();

if(isset($_GET['nregel']))
{
    $nregel = $_GET['nregel'];
    file_put_contents($file,$nregel,FILE_APPEND);


}

$members[] = file_get_contents($file);
var_dump($members);

?>
</body>
</html>

3 个答案:

答案 0 :(得分:1)

尝试添加&#39; \ n&#39;在您应该保存的字符串之前......

类似的东西:

file_put_contents($file, "\n{$nregel}", FILE_APPEND);

要读取类似数组,您需要将所有文件拆分为数组... 尝试类似:

preg_split('/\n/', file_get_contents(...));

记住......你在这里有超过一半的路径......

答案 1 :(得分:0)

编辑以下行

file_put_contents($file,$nregel,FILE_APPEND);

阅读

file_put_contents($file,$nregel."\n",FILE_APPEND);

答案 2 :(得分:0)

每次通过附加任何分隔符来写入您的值。分隔符不得是数据的一部分。

我在这里'|'作为分隔符

所以编写文件的代码将是

file_put_contents($file, '|'.$nregel, FILE_APPEND);

并检索

$members[] = explode('|', file_get_contents($file));