我的一位客户将所有产品信息都由外部来源处理.他们已经在CSV文件中向我提供了这个文件,他们会定期更新并上传到我的规范的ftp文件夹,比如说每周.
在此CSV文件中包含所有产品信息; 产品名称,规格,图像位置等
我为我的客户构建的站点正在运行一个MySQL数据库,我认为该数据库将保存所有产品信息,因此可以构建来处理所有产品数据.
我的问题是:我将如何创建和运行一个脚本,该脚本将从指定的FTP文件夹中找到新添加的CSV文件,提取数据,并替换相关MySQL表中的所有数据,这些都是自动完成的?
这甚至可能吗?
任何帮助将不胜感激,因为我不想使用IFrame选项,S.
您可以使用php的fread函数创建一个读取csv文件的脚本,提取数组中的每一行和格式以将其插入到数据库中.
$fileTemp = "path-of-the-file.csv";
$fp = fopen($fileTemp,'r');
$datas = array()
while (($data = fgetcsv($fp)) !== FALSE)
{
$data['productName'] = trim($data[0]);
$data['spec'] = trim($data[1]);
$data['imageLocation'] = trim($data[2]);
$datas[] = $data;
}
Run Code Online (Sandbox Code Playgroud)
现在您准备好了$datas可以通过迭代插入数据库的数组.
根据 csv 文件,应该非常简单
一些 csv 文件在文本“”周围有引号,有些没有,在引用字段中包含逗号等
根据您的 php 技能水平,这应该相当容易
您可以从文件中获取修改后的时间戳,以查看它是否是新的
http://nz.php.net/manual/en/function.lstat.php
打开文件并导入数据
http://php.net/manual/en/function.fgetcsv.php
插入数据库
http://nz.php.net/manual/en/function.mysql-query.php
如果 CSV 很难用 fgetcsv 解析,你可以尝试像 PHPExcel 项目这样的具有 csv 读取功能的项目
| 归档时间: |
|
| 查看次数: |
18075 次 |
| 最近记录: |