将csv输出为字符串,必须在php中解析为数组

时间:2012-07-09 08:47:46

标签: php csv

我已经获取了一个csv报告,我现在已经在一个字符串中了。

eg ->
$report="date,pageview,clicks
2012-07-01,229316,16739
2012-07-02,295238,19582
2012-07-03,278505,17805
2012-07-04,209455,15146
2012-07-05,250756,17206";

现在我想将这些数据保存在mysql数据库中,但没有获得任何优化的解决方案,因为我的真实$report非常大。

2 个答案:

答案 0 :(得分:6)

忘记使用PHP导入CSV文件然后将数据发送到MySQL-以获得优化的解决方案使用LOAD DATA INFILE并直接加载数据,如果数据不完全符合您的需要,您可以使用临时表

示例:

LOAD DATA INFILE '<yourcsv>' INTO TABLE <yourtable>
FIELDS TERMINATED BY ','
IGNORE 1 LINES;

警告 - 输入文件需要在MySQL服务器上本地可用

答案 1 :(得分:0)

使用fgetcsv以数组格式逐个读取记录。 http://php.net/manual/en/function.fgetcsv.php