先上張圖
實現原理
先讀取數據,用相應的數據段寫入CSV的行的對應段,然後保存為CSV即可,在最新版的淘寶助手中測試通過了
實現代碼
復制代碼 代碼如下:
function totaobao()
{
//加載所選商品
$map['goods_id'] = array('in',$this->returnid());
$result = $this->showgoods($map);
//寫入CSV並保存數據
$header =iconv('UTF-8','GB2312',"寶貝名稱,寶貝類目,店鋪類目,新舊程度,省,城市,出售方式,寶貝價格,加價幅度,寶貝數量,有效期,運費承擔,平郵,EMS,快遞,付款方式,支付寶,發票,保修,自動重發,放入倉庫,櫥窗推薦,開始時間,心情故事,寶貝描述,寶貝圖片,寶貝屬性,團購價,最小團購件數,郵費模版ID,會員打折,修改時間,上傳狀態,圖片狀態,返點比例,新圖片,視頻,銷售屬性組合,用戶輸入ID串,用戶輸入名-值對,商家編碼,銷售屬性別名,代充類型,寶貝編號");
header("Content-type:text/csv");
header("Content-Disposition:attachment;filename=ybkgoods.csv");
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Expires:0');
header('Pragma:public');
echo "$header\n";
//輸出數據體
foreach($result as $value)
{
//過濾描述字段
$desc = csvdatafilter("www.yibaikuan.com",$value['goods_desc']);
//截取圖片文件名
$img = msubstr($value['goods_thumb'],24,25);
//轉義
$body =iconv('UTF-8','GB2312',$value['goods_name'].",,,0,浙江,金華,b,".$value['shop_price'].",0,".$value['goods_number'].",14,1,20,20,10,,,0,0,1,0,1,,,".$desc.",,,,,0,0,,100,,0,".$img.":0:0:|;,,,,,,,0,");
echo "$body\n";
}
}
需要注意幾點
1.編碼問題
2.商品描述中的html代碼過濾問題
3.注意圖片的路徑
結語:
針對淘寶、拍拍、有啊 助手生成的csv的原理都是差不多的了,有需要的可以去測試。