构建数据Feed管理导入程序

时间:2015-03-29 20:49:16

标签: php mysql xml feed

我正在建立一个比较价格网站。我正在使用我定制的php软件。我现在拥有的是几种电子产品的清单。我的mysql数据库中有最多50.000个产品的列表。全部都有EAN号码。

所以基本上有30-50个网站使用产品数据源。一些客户在数据源中拥有超过15.000种产品。有些人使用带有UTF和其他扁平XML的XML。和其他使用CSV格式数据馈送。

我已经设法构建一个XML解析器来读取来自1个客户端的产品供稿,该客户端拥有更多的12.000种产品。

我的代码:

$xml_pf_file = "product_datafeed.xml";

$local_feed = new ProgramIterator($xml_pf_file, $def_xml_path);

foreach ($local_feed as $feedClient) {

    $Price      = $feedClient[''.$def_price.''];                    
    $DeepLink   = $feedClient[''.$def_url.''];                  
    $EanNr      = $feedClient[''.$def_ean.''];


    if ((strlen($EanNr) > 8) && is_numeric($EanNr)) 
    {

        $ProductId = CheckEanNrInProductDatabase($EanNr);

        if ($ProductId > 0)
        {

            $sql_add = "INSERT INTO ProductsFeedPrices 
                        (ProductId, CustomerId, Price, Deeplink) VALUES
                        (".$ProductId.", ".$CustomerId.", ".$Price.", '".$DeepLink."') ";

            if (mysql_query($sql_add)) {
                $teller_add++;
            }

            $count_add++;

        }


    }

    $count_i++;

}

从外部开始,每个网站都使用自己的产品数据源(xml,csv,json)。有时甚至花5分钟阅读1个产品。我想构建一个过程,使用PHP在mysql数据库中自动呈现所有产品供稿 - > EAN编号是现有产品的基本检查。

是否有一种识别产品Feed类型的好方法,可以为导入进行自定义编辑?

0 个答案:

没有答案