数码资讯
EXCEL数据导入使用PHPExcel方法实例
读取excel文件数据并返回错误信息。 复制代码代码如下所示: *进口商品基本资料 * / 公共功能importproductbasicinfo($数据){ include_once'phpexcel PHP的; include_once'phpexcel / iofactory PHP的; inc
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
读取excel文件数据并返回错误信息。
复制代码代码如下所示:
*进口商品基本资料
* /
公共功能importproductbasicinfo($数据){
include_once'phpexcel PHP的;
include_once'phpexcel / iofactory PHP的;
include_once'phpexcel / / Excel5 PHP的读者;
一组错误的定义。
$ =数组();
resultinfo美元= null;
neednext美元=真;
将文件上传到服务器指定的位置
文件名_files美元美元{ =productinfo} { 'name' };
路径= cbase_common_uploadpicture美元::上传下载($数据{productinfo},'product);
如果上载成功,则将执行导入操作excel。
如果(文件路径= = 1美元){
$错误{ 1 } =上传的文件超过价值的upload_max_filesize选择PHP INI;
} else if($路径= = 4){
$错误4 { 没有上传文件;
其他{ }
objreader美元= phpexcel_iofactory::createreader('excel5);
objreader美元-> setreaddataonly(真的);
objphpexcel美元=美元objreader ->负荷($文件路径);
objworksheet美元=美元objphpexcel -> getactivesheet();
highestrow美元=美元objworksheet -> gethighestrow();
highestcolumn美元=美元objworksheet -> gethighestcolumn();
highestcolumnindex美元= phpexcel_cell::columnindexfromstring($ highestcolumn);
$列=阵();
$ =数组();
excelallid美元=阵();
excelidrow美元=阵();
execlallshoplinkedid美元=阵();
为($我= 0;美元美元美元我<< highestcolumnindex;i++){
$值=装饰($ objworksheet -> getcellbycolumnandrow($,1)-> getValue()));
开关(美元值){
例:::自product_sap_code美元列{ $我} =sap_code ;打破;
例:::自product_name美元列{ $我} =pname ;打破;
例:::自product_group美元列{ $我} =product_group ;打破;
例:::自product_brand美元列{ $我} = 'product_brand打破的;
例:::自product_proxy_flag美元列{ $我} =product_proxy_flag ;打破;
例:::自product_binning美元列{ $我} =product_binning ;打破;
例:::自product_sell_pick美元列{ $我} =product_sell_pick ;打破;
例:::自product_attribute美元列{ $我} =product_attribute ;打破;
例:::自product_supplier_code美元列{ $我} =vendor_code ;打破;
例:::自product_supply_address美元列{ $我} =zzwerk_code ;打破;
例:::自product_batch美元列{ $我} =zzlgort_code ;打破;
默认值:$误差{ 3 } { } = $值;打破;
}
}
Excel的基本信息/检测是否存在
datacount = $ 1美元highestrow;
如果(计数(合柱)= = 0){
$错误5 } 没有头;
}
否则如果(!in_array('sap_code ',$列)){
错误{ 2 }产品SAP代码不存在于表的;
}
如果($ datacount <= 0){
$ { 6 }Excel文件中没有数据;
}
否则如果(计数($错误)= = 0){
为($我= 2;$i <= highestrow美元美元;i++){
colkey美元= array_search('sap_code);
shoplinkedidvalue美元=装饰($ objworksheet -> getcellbycolumnandrow(colkey美元,$我)-> getValue()));
如果(!shoplinkedidvalue美元){
继续;
}
如果(in_array(shoplinkedidvalue美元,美元execlallshoplinkedid)){
$错误{ 7 } { $ shoplinkedidvalue } { } =真'duplicate;
$错误{ 7 } { $ shoplinkedidvalue } { } { } 'excelrow=我;
execlallshoplinkedid美元美元美元shoplinkedidvalue } = {我;
$错误{ 7 } { $ shoplinkedidvalue } { } =真'noid;
{ }人
excelidrow美元美元美元我shoplinkedidvalue } = {;
execlallshoplinkedid美元美元美元shoplinkedidvalue } = {我;
}
}
dealmultiple美元=细胞($ datacount / 1000);
为所有产品=阵();
为($我= 0;美元美元美元我<< dealmultiple;i++){
$偏移=$ i * 1000 + 2;
$ =($ i + 1)* 1000 + 1;
最大值=(最大>美元美元美元美元美元datacount)highestrow:最大;
allshoplinkedid美元=阵();
对于($ = $偏移量;
如果($ execlallshoplinkedid { $ J }){
allshoplinkedid美元{ } = {,} execlallshoplinkedid美元美元;
}
}
根据图书馆中记录的商品编号编码查询。
dbshopproducts美元=美元-> getshoplinkedbyids($ allshoplinkedid);
对于($ = $偏移量;
$ =数组();
为($ k = 0;K<highestcolumnindex美元美元美元;K +){
tempv美元=装饰($ objworksheet -> getcellbycolumnandrow($ K,J)-> getValue()));
如果tempv tempv美元($!=){
$产品{ $列{ $ K } } = $ tempv;
}
}
获取文件
美元美元'sap_code的产品ID = { };
如果(!$ id){
继续;
}
检查商品是否已经存在
如果(!in_array($id,dbshopproducts美元)){
所有产品{ } =美元美元美元的产品ID;
其他{ }
$错误{ 7 } { $ ID } { } =真'hasid;
}
商品名是空的
如果(!isset($产品{ 'pname ' })){
$错误{ 7 } { $ ID } { } =真'emptyname;
}
货物类别(货物组)为空
如果(!isset($产品{ 'product_group ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductgroup;
}
/产品(品牌)级别是空的
如果(!isset($产品{ 'product_brand ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductbrand;
}
这批货物是空的{标志}。
如果(!isset($产品{ 'product_proxy_flag ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductproxyflag;
}
包装列表为空
如果(!isset($产品{ 'product_binning ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductbinning;
}
在第一个销售标记为空之后。
如果(!isset($产品{ 'product_sell_pick ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductsellpick;
}
商品属性为空。
如果(!isset($产品{ 'product_attribute ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductattribute;
}
供应商不是null编码。
如果(!isset($产品{ 'vendor_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyvendorcode;
}
空气供应/位置
如果(!isset($产品{ 'zzwerk_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyzzwerkcode;
}
空储器是空的
如果(!isset($产品{ 'zzlgort_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyzzlgortcode;
}
如果(isset($误差{ 7 } { $id })){
$错误{ 7 } { $ ID } { 'excelrow} = J;
}
}
}
}
}
resultinfo美元{ 'filename} = $文件名;
返回错误信息
如果(计数(错误)> 0){
如果(isset($误差{ 1 })){
resultinfo美元{类型} = 1;
resultinfo美元{ 'msg} = $误差{ 1 };
} else if(isset($误差{ 2 })){
resultinfo美元{类型} = 2;
resultinfo美元{ 'msg} = $误差{ 2 };
} else if(isset($误差{ 3 })){
resultinfo美元{类型} = 3;
resultinfo美元{ 'msg} =标题{ '(','美元崩溃,错误{ 3 })}不存在的。;
} else if(isset($误差{ 4 })){
resultinfo美元{类型} = 4;
resultinfo美元{ 'msg} = $误差{ 4 };
} else if(isset($误差{ 6 })){
resultinfo美元{类型} = 6;
resultinfo美元{ 'msg} = $误差{ 6 };
} else if(isset($误差{ 7 })){
excelname美元= null;
objphpwriteexcel美元=新PHPExcel();
objphpwriteexcel美元-> getProperties()-> setcreator(玉儿)
-> setlastmodifiedby(玉儿)-> settitle()-> setsubject()
-> setDescription()-> setkeywords()-> setcategory();
$前缀= substr($文件名,0个子($文件名'));
美元($文件名后缀= substr,个子($文件名'));
excelname美元=日期(y_m_d_h_i_s )。'_'。mt_rand(1,99)。'_'。$前缀。'errorreport为后缀;
excelname美元= base_tool_pinyin::getpinyin($ excelname);
$objPHPWriteExcel->setActiveSheetIndex (0);
将objphpwriteexcel美元美元= -> getactivesheet();
将美元-> settitle(错误报告);
将美元-> setcellvaluebycolumnandrow(0,1,自::product_sap_code);
将美元-> setcellvaluebycolumnandrow(1,1,原有的Excel行数);
将美元-> setcellvaluebycolumnandrow(2,1,几行编码是重复的);
将美元-> setcellvaluebycolumnandrow(3,1,自::product_name);
将美元-> setcellvaluebycolumnandrow(4,1,自::product_group);
将美元-> setcellvaluebycolumnandrow(5,1,自::product_brand);
将美元-> setcellvaluebycolumnandrow(6,1,自::product_proxy_flag);
将美元-> setcellvaluebycolumnandrow(7,1,自::product_binning);
将美元-> setcellvaluebycolumnandrow(8,1,自::product_sell_pick);
将美元-> setcellvaluebycolumnandrow(9,1,自::product_attribute);
$activeSheet->setCellValueByColumnAndRow (10,1, self:: PRODUCT_SUPPLIER_CODE);
将美元-> setcellvaluebycolumnandrow(1,自::product_supply_address);
将美元-> setcellvaluebycolumnandrow(12,1、自我::product_batch);
将美元-> setcellvaluebycolumnandrow(13,1,其他原因);
将getcolumndimensionbycolumn美元->(0)-> setwidth(15);
将getcolumndimensionbycolumn美元->(1)-> setwidth(20);
将getcolumndimensionbycolumn美元->(2)-> setwidth(20);
将getcolumndimensionbycolumn美元->(3)-> setwidth(20);
将getcolumndimensionbycolumn美元->(4)-> setwidth(20);
将getcolumndimensionbycolumn美元->(5)-> setwidth(20);
将getcolumndimensionbycolumn美元->(6)-> setwidth(20);
将getcolumndimensionbycolumn美元->(7)-> setwidth(20);
将getcolumndimensionbycolumn美元->(8)-> setwidth(20);
将getcolumndimensionbycolumn美元->(9)-> setwidth(20);
将getcolumndimensionbycolumn美元->(10)-> setwidth(20);
将getcolumndimensionbycolumn美元->(11)-> setwidth(20);
将getcolumndimensionbycolumn美元->(12)-> setwidth(20);
$activeSheet->getColumnDimensionByColumn (13) ->setWidth (20);
writeexcelindex = 2美元;
foreach($误差{ 7 }为PID = > $ pinfo){
如果(isset($ pinfo { 'hasid ' })){
将美元-> setcellvaluebycolumnandrow(0美元美元,writeexcelindex,PID。,该供应商已经存在的);
{人}
将美元-> setcellvaluebycolumnandrow(0美元美元,writeexcelindex,PID);
}
将美元-> setcellvaluebycolumnandrow(1,writeexcelindex美元,美元'excelrowpinfo { });
如果(isset($ pinfo { 'duplicate ' })){
将美元-> setcellvaluebycolumnandrow(2美元美元,writeexcelindex,excelidrow { $ PID });
}
如果(isset($ pinfo { 'emptyname ' })){
将美元-> setcellvaluebycolumnandrow(3,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductgroup ' })){
将美元-> setcellvaluebycolumnandrow(4,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductbrand ' })){
将美元-> setcellvaluebycolumnandrow(5,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductproxyflag ' })){
将美元-> setcellvaluebycolumnandrow(6,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductbinning ' })){
将美元-> setcellvaluebycolumnandrow(7,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductsellpick ' })){
将美元-> setcellvaluebycolumnandrow(8,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductattribute ' })){
将美元-> setcellvaluebycolumnandrow(9,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyvendorcode ' })){
将美元-> setcellvaluebycolumnandrow(10,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyzzwerkcode ' })){
将美元-> setcellvaluebycolumnandrow(11,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyzzlgortcode ' })){
将美元-> setcellvaluebycolumnandrow(12,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'other' ' })){
将美元-> setcellvaluebycolumnandrow(13美元writeexcelindex美元,其他的pinfp { });
}
writeexcelindex美元+ +;
}
objwriter美元= phpexcel_iofactory::createwriter(objphpwriteexcel美元,'excel5);
excelpath美元= file_path。DS。'feedback'。excelname美元DS;
objwriter美元->保存($ excelpath);
resultinfo美元{类型} = 7;
resultinfo美元{ 'msg} = $文件名。文件中有错误;
resultinfo美元{ 'errorreport} = $ excelname;
log操作,暂时空
}
其他{ }
输入数据
logids美元=;
$ I = 0;
foreach(所有产品美元美元美元PID = pinfo){
updateproductsql美元= 'insert为yr_product集;
如果(isset($ pinfo { 'pname ' })装饰($ pinfo { 'pname ' })){
updateproductsql美元= updateproductsql美元。'pname = 。str_replace(、 ,pinfo美元{ 'pname ' })。;
}
如果SAP小于18位/编码,则有0个左完成
如果(isset($ pinfo { 'sap_code ' })){
如果(strlen($ pinfo { 'sap_code ' })<18){
pinfo美元{ 'sap_code} = str_pad($ pinfo { 'sap_code},18,0
updateproductsql美元= updateproductsql美元。'sap_code = 。str_replace(、 ,pinfo美元{ 'sap_code ' })。;
}
}
如果(isset($ pinfo { 'product_group ' })){
updateproductsql美元= updateproductsql美元。'product_group = 。pinfo美元{ 'product_group};
}
如果(isset($ pinfo { 'product_brand ' })){
updateproductsql美元= updateproductsql美元。'product_brand = 。pinfo美元{ 'product_brand};
}
如果(isset($ pinfo { 'product_proxy_flag ' })){
updateproductsql美元= updateproductsql美元。'product_proxy_flag = 。pinfo美元{ 'product_proxy_flag};
}
如果(isset($ pinfo { 'product_binning ' })){
updateproductsql美元= updateproductsql美元。'product_binning = 。pinfo美元{ 'product_binning};
}
如果(isset($ pinfo { 'product_sell_pick ' })){
updateproductsql美元= updateproductsql美元。'product_sell_pick = 。pinfo美元{ 'product_sell_pick};
}
如果(isset($ pinfo { 'product_attribute ' })){
updateproductsql美元= updateproductsql美元。'product_attribute = 。pinfo美元{ 'product_attribute};
}
如果(isset($ pinfo { 'vendor_code ' })){
updateproductsql美元= updateproductsql美元。'vendor_code = 。pinfo美元{ 'vendor_code};
}
如果(isset($ pinfo { 'zzwerk_code ' })){
updateproductsql美元= updateproductsql美元。'zzwerk_code = 。pinfo美元{ 'zzwerk_code};
}
如果(isset($ pinfo { 'zzlgort_code ' })){
updateproductsql美元= updateproductsql美元。'zzlgort_code = 。pinfo美元{ 'zzlgort_code};
}
最后的语句
结果=美元美元-> excutemultiinsertsql($ updateproductsql);
}
$resultInfo{'type'} = 8;
resultinfo美元{ 'msg} =进口商品基本信息成功;
*
日志操作。
*美元=新商品进口操作成功的批次:进口货物以>编码供应;
* $资料{ 'content' } =内容logids美元美元;
* /
}
返回的resultinfo;
}
复制代码代码如下所示:
*进口商品基本资料
* /
公共功能importproductbasicinfo($数据){
include_once'phpexcel PHP的;
include_once'phpexcel / iofactory PHP的;
include_once'phpexcel / / Excel5 PHP的读者;
一组错误的定义。
$ =数组();
resultinfo美元= null;
neednext美元=真;
将文件上传到服务器指定的位置
文件名_files美元美元{ =productinfo} { 'name' };
路径= cbase_common_uploadpicture美元::上传下载($数据{productinfo},'product);
如果上载成功,则将执行导入操作excel。
如果(文件路径= = 1美元){
$错误{ 1 } =上传的文件超过价值的upload_max_filesize选择PHP INI;
} else if($路径= = 4){
$错误4 { 没有上传文件;
其他{ }
objreader美元= phpexcel_iofactory::createreader('excel5);
objreader美元-> setreaddataonly(真的);
objphpexcel美元=美元objreader ->负荷($文件路径);
objworksheet美元=美元objphpexcel -> getactivesheet();
highestrow美元=美元objworksheet -> gethighestrow();
highestcolumn美元=美元objworksheet -> gethighestcolumn();
highestcolumnindex美元= phpexcel_cell::columnindexfromstring($ highestcolumn);
$列=阵();
$ =数组();
excelallid美元=阵();
excelidrow美元=阵();
execlallshoplinkedid美元=阵();
为($我= 0;美元美元美元我<< highestcolumnindex;i++){
$值=装饰($ objworksheet -> getcellbycolumnandrow($,1)-> getValue()));
开关(美元值){
例:::自product_sap_code美元列{ $我} =sap_code ;打破;
例:::自product_name美元列{ $我} =pname ;打破;
例:::自product_group美元列{ $我} =product_group ;打破;
例:::自product_brand美元列{ $我} = 'product_brand打破的;
例:::自product_proxy_flag美元列{ $我} =product_proxy_flag ;打破;
例:::自product_binning美元列{ $我} =product_binning ;打破;
例:::自product_sell_pick美元列{ $我} =product_sell_pick ;打破;
例:::自product_attribute美元列{ $我} =product_attribute ;打破;
例:::自product_supplier_code美元列{ $我} =vendor_code ;打破;
例:::自product_supply_address美元列{ $我} =zzwerk_code ;打破;
例:::自product_batch美元列{ $我} =zzlgort_code ;打破;
默认值:$误差{ 3 } { } = $值;打破;
}
}
Excel的基本信息/检测是否存在
datacount = $ 1美元highestrow;
如果(计数(合柱)= = 0){
$错误5 } 没有头;
}
否则如果(!in_array('sap_code ',$列)){
错误{ 2 }产品SAP代码不存在于表的;
}
如果($ datacount <= 0){
$ { 6 }Excel文件中没有数据;
}
否则如果(计数($错误)= = 0){
为($我= 2;$i <= highestrow美元美元;i++){
colkey美元= array_search('sap_code);
shoplinkedidvalue美元=装饰($ objworksheet -> getcellbycolumnandrow(colkey美元,$我)-> getValue()));
如果(!shoplinkedidvalue美元){
继续;
}
如果(in_array(shoplinkedidvalue美元,美元execlallshoplinkedid)){
$错误{ 7 } { $ shoplinkedidvalue } { } =真'duplicate;
$错误{ 7 } { $ shoplinkedidvalue } { } { } 'excelrow=我;
execlallshoplinkedid美元美元美元shoplinkedidvalue } = {我;
$错误{ 7 } { $ shoplinkedidvalue } { } =真'noid;
{ }人
excelidrow美元美元美元我shoplinkedidvalue } = {;
execlallshoplinkedid美元美元美元shoplinkedidvalue } = {我;
}
}
dealmultiple美元=细胞($ datacount / 1000);
为所有产品=阵();
为($我= 0;美元美元美元我<< dealmultiple;i++){
$偏移=$ i * 1000 + 2;
$ =($ i + 1)* 1000 + 1;
最大值=(最大>美元美元美元美元美元datacount)highestrow:最大;
allshoplinkedid美元=阵();
对于($ = $偏移量;
如果($ execlallshoplinkedid { $ J }){
allshoplinkedid美元{ } = {,} execlallshoplinkedid美元美元;
}
}
根据图书馆中记录的商品编号编码查询。
dbshopproducts美元=美元-> getshoplinkedbyids($ allshoplinkedid);
对于($ = $偏移量;
$ =数组();
为($ k = 0;K<highestcolumnindex美元美元美元;K +){
tempv美元=装饰($ objworksheet -> getcellbycolumnandrow($ K,J)-> getValue()));
如果tempv tempv美元($!=){
$产品{ $列{ $ K } } = $ tempv;
}
}
获取文件
美元美元'sap_code的产品ID = { };
如果(!$ id){
继续;
}
检查商品是否已经存在
如果(!in_array($id,dbshopproducts美元)){
所有产品{ } =美元美元美元的产品ID;
其他{ }
$错误{ 7 } { $ ID } { } =真'hasid;
}
商品名是空的
如果(!isset($产品{ 'pname ' })){
$错误{ 7 } { $ ID } { } =真'emptyname;
}
货物类别(货物组)为空
如果(!isset($产品{ 'product_group ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductgroup;
}
/产品(品牌)级别是空的
如果(!isset($产品{ 'product_brand ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductbrand;
}
这批货物是空的{标志}。
如果(!isset($产品{ 'product_proxy_flag ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductproxyflag;
}
包装列表为空
如果(!isset($产品{ 'product_binning ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductbinning;
}
在第一个销售标记为空之后。
如果(!isset($产品{ 'product_sell_pick ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductsellpick;
}
商品属性为空。
如果(!isset($产品{ 'product_attribute ' })){
$错误{ 7 } { $ ID } { } =真'emptyproductattribute;
}
供应商不是null编码。
如果(!isset($产品{ 'vendor_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyvendorcode;
}
空气供应/位置
如果(!isset($产品{ 'zzwerk_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyzzwerkcode;
}
空储器是空的
如果(!isset($产品{ 'zzlgort_code ' })){
$错误{ 7 } { $ ID } { } =真'emptyzzlgortcode;
}
如果(isset($误差{ 7 } { $id })){
$错误{ 7 } { $ ID } { 'excelrow} = J;
}
}
}
}
}
resultinfo美元{ 'filename} = $文件名;
返回错误信息
如果(计数(错误)> 0){
如果(isset($误差{ 1 })){
resultinfo美元{类型} = 1;
resultinfo美元{ 'msg} = $误差{ 1 };
} else if(isset($误差{ 2 })){
resultinfo美元{类型} = 2;
resultinfo美元{ 'msg} = $误差{ 2 };
} else if(isset($误差{ 3 })){
resultinfo美元{类型} = 3;
resultinfo美元{ 'msg} =标题{ '(','美元崩溃,错误{ 3 })}不存在的。;
} else if(isset($误差{ 4 })){
resultinfo美元{类型} = 4;
resultinfo美元{ 'msg} = $误差{ 4 };
} else if(isset($误差{ 6 })){
resultinfo美元{类型} = 6;
resultinfo美元{ 'msg} = $误差{ 6 };
} else if(isset($误差{ 7 })){
excelname美元= null;
objphpwriteexcel美元=新PHPExcel();
objphpwriteexcel美元-> getProperties()-> setcreator(玉儿)
-> setlastmodifiedby(玉儿)-> settitle()-> setsubject()
-> setDescription()-> setkeywords()-> setcategory();
$前缀= substr($文件名,0个子($文件名'));
美元($文件名后缀= substr,个子($文件名'));
excelname美元=日期(y_m_d_h_i_s )。'_'。mt_rand(1,99)。'_'。$前缀。'errorreport为后缀;
excelname美元= base_tool_pinyin::getpinyin($ excelname);
$objPHPWriteExcel->setActiveSheetIndex (0);
将objphpwriteexcel美元美元= -> getactivesheet();
将美元-> settitle(错误报告);
将美元-> setcellvaluebycolumnandrow(0,1,自::product_sap_code);
将美元-> setcellvaluebycolumnandrow(1,1,原有的Excel行数);
将美元-> setcellvaluebycolumnandrow(2,1,几行编码是重复的);
将美元-> setcellvaluebycolumnandrow(3,1,自::product_name);
将美元-> setcellvaluebycolumnandrow(4,1,自::product_group);
将美元-> setcellvaluebycolumnandrow(5,1,自::product_brand);
将美元-> setcellvaluebycolumnandrow(6,1,自::product_proxy_flag);
将美元-> setcellvaluebycolumnandrow(7,1,自::product_binning);
将美元-> setcellvaluebycolumnandrow(8,1,自::product_sell_pick);
将美元-> setcellvaluebycolumnandrow(9,1,自::product_attribute);
$activeSheet->setCellValueByColumnAndRow (10,1, self:: PRODUCT_SUPPLIER_CODE);
将美元-> setcellvaluebycolumnandrow(1,自::product_supply_address);
将美元-> setcellvaluebycolumnandrow(12,1、自我::product_batch);
将美元-> setcellvaluebycolumnandrow(13,1,其他原因);
将getcolumndimensionbycolumn美元->(0)-> setwidth(15);
将getcolumndimensionbycolumn美元->(1)-> setwidth(20);
将getcolumndimensionbycolumn美元->(2)-> setwidth(20);
将getcolumndimensionbycolumn美元->(3)-> setwidth(20);
将getcolumndimensionbycolumn美元->(4)-> setwidth(20);
将getcolumndimensionbycolumn美元->(5)-> setwidth(20);
将getcolumndimensionbycolumn美元->(6)-> setwidth(20);
将getcolumndimensionbycolumn美元->(7)-> setwidth(20);
将getcolumndimensionbycolumn美元->(8)-> setwidth(20);
将getcolumndimensionbycolumn美元->(9)-> setwidth(20);
将getcolumndimensionbycolumn美元->(10)-> setwidth(20);
将getcolumndimensionbycolumn美元->(11)-> setwidth(20);
将getcolumndimensionbycolumn美元->(12)-> setwidth(20);
$activeSheet->getColumnDimensionByColumn (13) ->setWidth (20);
writeexcelindex = 2美元;
foreach($误差{ 7 }为PID = > $ pinfo){
如果(isset($ pinfo { 'hasid ' })){
将美元-> setcellvaluebycolumnandrow(0美元美元,writeexcelindex,PID。,该供应商已经存在的);
{人}
将美元-> setcellvaluebycolumnandrow(0美元美元,writeexcelindex,PID);
}
将美元-> setcellvaluebycolumnandrow(1,writeexcelindex美元,美元'excelrowpinfo { });
如果(isset($ pinfo { 'duplicate ' })){
将美元-> setcellvaluebycolumnandrow(2美元美元,writeexcelindex,excelidrow { $ PID });
}
如果(isset($ pinfo { 'emptyname ' })){
将美元-> setcellvaluebycolumnandrow(3,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductgroup ' })){
将美元-> setcellvaluebycolumnandrow(4,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductbrand ' })){
将美元-> setcellvaluebycolumnandrow(5,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductproxyflag ' })){
将美元-> setcellvaluebycolumnandrow(6,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductbinning ' })){
将美元-> setcellvaluebycolumnandrow(7,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductsellpick ' })){
将美元-> setcellvaluebycolumnandrow(8,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyproductattribute ' })){
将美元-> setcellvaluebycolumnandrow(9,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyvendorcode ' })){
将美元-> setcellvaluebycolumnandrow(10,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyzzwerkcode ' })){
将美元-> setcellvaluebycolumnandrow(11,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'emptyzzlgortcode ' })){
将美元-> setcellvaluebycolumnandrow(12,writeexcelindex美元,'空');
}
如果(isset($ pinfo { 'other' ' })){
将美元-> setcellvaluebycolumnandrow(13美元writeexcelindex美元,其他的pinfp { });
}
writeexcelindex美元+ +;
}
objwriter美元= phpexcel_iofactory::createwriter(objphpwriteexcel美元,'excel5);
excelpath美元= file_path。DS。'feedback'。excelname美元DS;
objwriter美元->保存($ excelpath);
resultinfo美元{类型} = 7;
resultinfo美元{ 'msg} = $文件名。文件中有错误;
resultinfo美元{ 'errorreport} = $ excelname;
log操作,暂时空
}
其他{ }
输入数据
logids美元=;
$ I = 0;
foreach(所有产品美元美元美元PID = pinfo){
updateproductsql美元= 'insert为yr_product集;
如果(isset($ pinfo { 'pname ' })装饰($ pinfo { 'pname ' })){
updateproductsql美元= updateproductsql美元。'pname = 。str_replace(、 ,pinfo美元{ 'pname ' })。;
}
如果SAP小于18位/编码,则有0个左完成
如果(isset($ pinfo { 'sap_code ' })){
如果(strlen($ pinfo { 'sap_code ' })<18){
pinfo美元{ 'sap_code} = str_pad($ pinfo { 'sap_code},18,0
updateproductsql美元= updateproductsql美元。'sap_code = 。str_replace(、 ,pinfo美元{ 'sap_code ' })。;
}
}
如果(isset($ pinfo { 'product_group ' })){
updateproductsql美元= updateproductsql美元。'product_group = 。pinfo美元{ 'product_group};
}
如果(isset($ pinfo { 'product_brand ' })){
updateproductsql美元= updateproductsql美元。'product_brand = 。pinfo美元{ 'product_brand};
}
如果(isset($ pinfo { 'product_proxy_flag ' })){
updateproductsql美元= updateproductsql美元。'product_proxy_flag = 。pinfo美元{ 'product_proxy_flag};
}
如果(isset($ pinfo { 'product_binning ' })){
updateproductsql美元= updateproductsql美元。'product_binning = 。pinfo美元{ 'product_binning};
}
如果(isset($ pinfo { 'product_sell_pick ' })){
updateproductsql美元= updateproductsql美元。'product_sell_pick = 。pinfo美元{ 'product_sell_pick};
}
如果(isset($ pinfo { 'product_attribute ' })){
updateproductsql美元= updateproductsql美元。'product_attribute = 。pinfo美元{ 'product_attribute};
}
如果(isset($ pinfo { 'vendor_code ' })){
updateproductsql美元= updateproductsql美元。'vendor_code = 。pinfo美元{ 'vendor_code};
}
如果(isset($ pinfo { 'zzwerk_code ' })){
updateproductsql美元= updateproductsql美元。'zzwerk_code = 。pinfo美元{ 'zzwerk_code};
}
如果(isset($ pinfo { 'zzlgort_code ' })){
updateproductsql美元= updateproductsql美元。'zzlgort_code = 。pinfo美元{ 'zzlgort_code};
}
最后的语句
结果=美元美元-> excutemultiinsertsql($ updateproductsql);
}
$resultInfo{'type'} = 8;
resultinfo美元{ 'msg} =进口商品基本信息成功;
*
日志操作。
*美元=新商品进口操作成功的批次:进口货物以>编码供应;
* $资料{ 'content' } =内容logids美元美元;
* /
}
返回的resultinfo;
}
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。