从mysql生成多个txt文件

时间:2017-10-15 20:22:30

标签: php mysql

我为可能是一个天真的问题道歉,但有没有办法使用mySQL脚本从表的内容生成多个文本文件?例如,给出下表:

表:购物篮

id_basket     id_client    item
1             1            apple  
2             1            mushroom
3             4            potato
4             4            cherry
5             4            apple   
6             7            sausage
...etc.

生成\ n分隔的txt文件,如下所示:

的1.txt

 apple
 mushroom

4.txt

 potato
 cherry
 apple

7.txt

 sausage

...等

理想情况下,我想在不使用php的情况下这样做,但我接受php可能是唯一的简单路线。我非常感谢任何建议!

詹姆斯

2 个答案:

答案 0 :(得分:0)

尝试以下代码。这是有效的

注意:首先在根文件夹下创建一个文件目录。

$res  = mysqli_query($conn,"SELECT GROUP_CONCAT(item) AS items , id_client FROM basket GROUP BY id_client");

while($row=mysqli_fetch_assoc($res)){
    $fileName = $row['id_client'].".txt";
    $csv = str_replace(",",PHP_EOL,$row['items']);
    $csv_handler = fopen ("files/".$fileName,'w');
    fwrite ($csv_handler,$csv);
    fclose ($csv_handler);
}

答案 1 :(得分:0)

$query = mysqli_query($connect, "SELECT * FROM basket");
while($assoc = mysqli_fetch_assoc($query)){
$filesname = $assoc['id_client'].'.txt';
$contents = $assoc['item']."\n";
$put = file_put_contents($filesname, $contents, FILE_APPEND | LOCK_EX);
}

试试这个:)它会起作用:)。