• 对接ebay,订单系统开发


    要求,从ebay 下载的 csv文件,导入销售订单的系统,成为自己的订单.

    首先,上传文件.

    第二步,将上传的csv读入系统的一个变量(str_getcsv ,保命函数,本来导入好好地突然 有些导入进去 某些就错了,原来,csv用逗号分割,但是有些字段内,也有逗号,以至于有些位置就错位了.)

    根据','来分割成一个数组

    $str = file_get_contents($file);//将整个文件内容读入到一个字符串中
    $str_encoding = mb_convert_encoding($str, 'UTF-8', 'ASCII');//转换字符集(编码)
    $arr = explode(" ", $str_encoding);//转换成数组
    $goods_list=array();
    $Disposable=true;//控制,第一行是逗号分隔,以后的数据,是引号 逗号 引号分隔
    $Separator=",";//$Separator 分割符号
    foreach ($arr as $k=>$row)
    {
    if (strlen($row)<1)//如果这一行不为空 继续程序 避免错误文件
    {
    continue;
    }
    $rowfen=trim($row);//去除多余的 制表位和空格符号
    if (!empty($rowfen))
    {
    //$hang=explode($Separator,$rowfen);//每一行都分割成数组的元素
    //2.0
         $hang=str_getcsv($rowfen,',','""');//每一行都分割成数组的元素
    foreach ($hang as $var){
    $datax[]=trim($var,'"');
    }
    //一次执行,只有数据的第一行需要逗号分隔 ; 剩余数据需要用引号逗号引号分割
    if ($Disposable){
    $Separator="","";//变更,分割数组的标志
    $Disposable=false;
    }
    $goods_list[]=$datax;
    unset($datax);
    }

    }
    unset($row);

     

    第三步,我根据csv文件的规律,第二行,是每个字段的名,寻找我需要的字段,记录下$key值 ,  

    $mark['variation']=array_search("Variation Details",$goods_list[0]);//变量 $mark['variation']
    $mark['number']=array_search("Item Number",$goods_list[0]);//产品号 $mark['number']
    $mark['UserId']=array_search("User Id",$goods_list[0]);//User Id 买家名

    开始循环并入数组,每一个数组是一条记录

    完整后,写入数据库.

    思路是很简单,

    但是有很多别的问题,比如合并订单,去除重复订单,冻结库存,统计导入的订单都分布在哪些地址,

  • 相关阅读:
    正则表达式(RegExp)
    文本处理工具(cut,sort,tr,grep等)
    权限和ACL练习题
    访问控制列表ACL
    权限和ACL访问控制-02-特殊权限
    数据库的高级操作
    数据表三范式&范式理论
    数据表之间的关系
    数据表的列类型
    修改表结构
  • 原文地址:https://www.cnblogs.com/fengxiaoyao/p/10110698.html
Copyright © 2020-2023  润新知