所以我想用php写一个txt文件。这个txt文件包含一个数组的值。问题是,当我写在我的文本字段数组[0]变长,而不是在数组(数组[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>
尝试在应该保存的字符串前添加''n'
类似:
file_put_contents($file, "'n{$nregel}", FILE_APPEND);
和读取像数组,你需要分割所有文件到数组…试试这样写:
preg_split('/'n/', file_get_contents(...));
记得……
编辑以下行
file_put_contents($file,$nregel,FILE_APPEND);
读file_put_contents($file,$nregel."'n",FILE_APPEND);
通过附加任何分隔符每次写入您的值。分隔符不能是数据的一部分。
这里我用'|'作为分隔符
所以写文件的代码应该是
file_put_contents($file, '|'.$nregel, FILE_APPEND);
和检索
$members[] = explode('|', file_get_contents($file));