如何在通过php导入csv文件之前进行检查?

时间:2013-07-22 06:53:50

标签: php codeigniter-2

如何在用PHP导入CSV文件之前进行检查?

我有一个CSV文件,其中包含列id, name, telephone, email的信息,并且数据库具有相同的列。我有PHP文件,可以将CSV文件导入数据库。

现在,我想要批量更新信息,如何匹配CSV文件和数据库之间的id,名称,以避免错误的数据输入(假设数据库中的数据是正确的,但在CSV中它是错)。

最后,PHP可以显示您的CSV数据不正确的消息!谢谢!有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您可以按照以下方式执行此操作:

  • 使用fread()filesize()
  • 阅读您的CSV
  • explode()数据,可能使用换行符(\n
  • 使用foreach
  • 遍历每行数据
  • 可能使用逗号(,
  • 分解每一行
  • 使用preg_match()和正则表达式模式测试该数组的每个索引,以确保它符合您的要求
  • 使用类似的方式查询数据库(在PHP中,未经测试)

    $query = "UPDATE yourtable SET name='".$name."' WHERE id='".$id."'";


确保使用PDO或类似方法对您的查询进行补充,以避免始终进行SQL注入。

我认为,最后一个要点是你问题的关键。您需要阅读UPDATEINSERT SQL查询 - 这里有一个可能有用的问题:Mysql function: Insert if not exist or updated

您还没有在原始问题中包含任何代码或起点,因此我无法帮助您了解具体细节,但我相信您可以自行研究。我说这是一个容易中间的困难。