我的表(MYSQL 数据库)中有两列
一列包含别名,另一列包含真实姓名
Coln1:The_Spiderman coln2:-Peter,J,Parker
** 注意:第 1 列实际上是文件的名称。因此,它不能包含特殊字符。 但是,Coln2 可以包含逗号
我有一个 csv 文件,其中包含一组实际存在于所述表的 Col1 中的值。它们可以包含空格、下划线。
我计划执行以下操作:
a) 从csv文件中一一读取每个值 b) 使用该值在 mysql 表上进行查找并获取真实姓名 c) 将真实姓名写入同一个csv文件
我有一些 php 经验,但我无法将所有这些放在一起。
有人可以帮助我吗?
谢谢 腰带
**ANSWER:**
感谢@briosheje 的提示 这是我想到的:-
<?php
$row = 1;
if (($handle = fopen("group.txt", "r")) !== FALSE)
{
while (($data = fgetcsv($handle, 2000, ",")) !== FALSE)
{
$num = count($data);
$row++;
$link = mysqli_connect("localhost","user","pwd","dbname");
for ($c=0; $c < $num; $c++)
{
$query = "SELECT name FROM table where alias = '" . $data[$c] . "'";
$result = $link->query($query) OR die("Error in the consult.." . mysqli_error($link));
while($row = mysqli_fetch_array($result))
{
$fp = fopen('output.txt', 'a');
fwrite($fp, $row["name"].PHP_EOL);
}
}
fclose ($fp);
}
}
fclose ($handle);
最佳答案
要从 CSV 中检索数据,请使用 fgetcsv .
它将返回一个数组,其中包含 CSV 中包含的数据。
要详细说明数据,请使用 SQL 查询进行所需的比较(当然,在连接到数据库之后,我假设您知道如何执行此操作)。
检查this如果您不知道如何使用 PHP 查询数据库。
查询数据库并进行比较后,假设您的 CSV 文件中不会有任何重复,请将 fgetcsv 返回的数组的值替换为您需要的值,然后使用 fputcsv完成工作。
希望这能给您带来启发!
关于php - 读取php文件并查找mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18693176/