寻找替代PHP fgetcsv()函数来处理文本文件

时间:2010-11-09 08:41:00

标签: php mysql

我正在创建一个Web界面,使用户能够将文本文件中的数据导入mysql数据库。

我想知道是否有人知道是否还有另一个函数来处理文本文件,因为我目前看到的是用于处理csv文件的fgetcsv()。另一种方法是将文本文件转换为我不想要的csv文件。还有其他方法吗?

2 个答案:

答案 0 :(得分:0)

fgetcsv()替换为fgets(),它从文件指针而不是CSV“行”获取一行。

答案 1 :(得分:0)

  

这意味着fgetcsv的使用不严格或者是什么?附加到函数名称的csv的本质是什么?

CSV表示“comma-separated values”。这意味着有一行文字中有逗号,逗号分隔值。 E.g:

Value 1,Value 2,Value 3

这就是它的全部内容。这是一种或多或少标准化的方式,以语言中立的方式保存平面数组或行数据(有一些细节,例如,保存值本身就有逗号,但这就是它的要点。像fgetcsv这样的函数可以处理这些细节,而不必每次重新发明轮子时间。)
与上述等效的PHP本机将是array('Value 1', 'Value 2', 'Value 3')

所有fgetcsv确实从文件中一次读取一行,找到其中的逗号并返回它找到的数据数组。它对你告诉它要阅读的任何文件都这样做,它对文件扩展名一点也不关心。如果该行中没有逗号,则它不会做太多,只返回一个值。 CSV格式本身很简单,甚至没有真正的标准,所以fgetcsv没有什么可以非常“严格”。