从SQL中提取数据,然后写入文本文件
我试图从SQL中提取数据,然后将其写入文本文件。这在一定程度上做到了这一点, 文本文件
。
我希望能够从表中提取所有数据,然后以诸如此类的列表格式发布到文本文件中…
test:test test2:test2
test3:test3
我需要找出我做错了什么。
<?php$sql = mysql_query("SELECT * FROM _$setprofile ORDER BY fc DESC");
while($row = mysql_fetch_array($sql)){
$user = $row['user'];
$pass = $row['pass'];
$accounts = "$user:$pass<br>";
//Functionsss!
$file = "backups/$newcode.txt";
file_put_contents($file, $accounts);
}
echo "<a href=backups/$newcode.txt>TEST!</a>";
?>
回答:
该file_put_contents()
函数将覆盖整个文件-
这就是为什么每次都只获得最后一条记录的原因。
您可以使用fopen()
和fwrite()
代替。
尽管比构造一个大字符串并使用单个调用稍微复杂一些file_put_contents
,但是如果您有很多记录,这也不会耗尽内存。
<?php$file = "backups/$newcode.txt";
$f = fopen($file, 'w'); // Open in write mode
$sql = mysql_query("SELECT * FROM _$setprofile ORDER BY fc DESC");
while($row = mysql_fetch_array($sql))
{
$user = $row['user'];
$pass = $row['pass'];
$accounts = "$user:$pass<br>";
// Or "$user:$pass\n" as @Benjamin Cox points out
fwrite($f, $accounts);
}
fclose($f);
echo "<a href=backups/$newcode.txt>TEST!</a>";
?>
以上是 从SQL中提取数据,然后写入文本文件 的全部内容, 来源链接: utcz.com/qa/398936.html