求PHP从数据库中读取内容并存入文件和从文件读取数据插入数据库的代码

2024-11-16 07:00:57
推荐回答(2个)
回答1:

//第一种 
$conn = mysql_connect("主机名","用户名","密码");
mysql_select_db("数据库名",$conn);
$sql = "select * from user";
$result = mysql_query($sql);
$data="";
while($row = mysql_fetch_row($result)){
    foreach($row as $v){
        $data .=$v."|";      //加个树线隔开字段
    }
    nl2br($data);    //读完一行回车
}
file_put_contents("abc.txt",$data);


//第二种
$filename = "abc.txt";
$res = fopen($filename,"r");
while(!feof($res)){
$buffer = fgets($res);
$buffer = str_replace(' ', '|', $buffer); 
$array = explode('|', $buffer); 
foreach($array as $v){
if(strlen($v)>0){
$arr[] = $v;
}
}
}
fclose($res);
//组装数组插入数据库就可以了

回答2:

$mysqli = mysqli_connect("【运行MySQL的服务器】", "【登录MySQL的用户名】", "【登录MySQL的用户密码】", "【放着表的库名称】"); // 建立 PHP 程序与数据库的连接 $mysqli
// 【运行MySQL的服务器】可以是 MySQL 服务器所在的 IP 地址,如果是本机,就是 localhost
/* 下面3行检查连接是否成功了 */
if (mysqli_connect_errno()) {
printf("连接失败了,出错信息:%s\n", mysqli_connect_error());
exit();}
$query = "SELECT * from 【表的名称】"; // 构造 查表用的 SQL 语句 $query
$handle = fopen("abc.txt", "w"); // 打开 用于保存查询结果的磁盘文件 "abc.txt",得到文件句柄 $handle 以备保存结果。
if ($result = mysqli_query($mysqli, $query)) { // 读取库内指定表的记录,得到记录集 $result
while ($row = mysqli_fetch_row($result)) { // 记录集 $result 的每一行做成一个数组 $row
$L=implode ("\t", $row ); // 把数组 $row 变成一个字符串 $L,每个元素用 "\t" (Tab 键)隔开
fwrite($handle, $L."\r\n"); // 把字符串 $L 和其后的回车“\r”、换行“\n”写入到 "abc.txt" 文件中。
} // 终止 while 循环,意味着处理完了全部记录
mysqli_free_result($result); // 释放记录集 $result 所占内存
} // 对应于 if 语句,跳过对于空表的处理
mysqli_close($mysqli); // 关闭 连接 $mysqli
fclose ($handle ); // 关闭文件
?>
***************************************************************

$lines = file("abc.txt"); 语句把磁盘文件 "abc.txt" 读入内存成为 PHP 程序的 一个数组 $lines ,它的每个元素对应于 "abc.txt" 文件的每一行,你对这个数组进行处理就可以了。