PHP 导出数据到淘宝助手CSV的方法分享

yipeiwu_com6年前PHP代码库

先上张图


实现原理

先读取数据,用相应的数据段写入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的原理都是差不多的了,有需要的可以去测试。

相关文章

php异步:在php中使用fsockopen curl实现类似异步处理的功能方法

PHP从主流来看,是一门面向过程的语言,它的最大缺点就是无法实现多线程管理,其程序的执行都是从头到尾,按照逻辑一路执行下来,不可能出现分支,这一点是限制php在主流程序语言中往更高级的语...

解析phpstorm + xdebug 远程断点调试

XDEBUG配置:1.安装 xdebug 略了。网上有很多资料。 重点写php.ini的配置 [XDebug]复制代码 代码如下:zend_extension="/usr/lib/php...

PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例

本文实例讲述了PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法。分享给大家供大家参考,具体如下: 1、如何在php中把驼峰样式的字符串转换成下划线样式的字符串。例:输入...

PHP简单实现上一页下一页功能示例

本文实例讲述了PHP简单实现上一页下一页功能。分享给大家供大家参考,具体如下: 思路整理: 现在好多人用id的增1和减1实现上一篇和下一篇,但是难道文章ID不会断了吗?所以你要知道上个I...

php实现阿拉伯数字和罗马数字相互转换的方法

本文实例讲述了php实现阿拉伯数字和罗马数字相互转换的方法。分享给大家供大家参考。具体如下: <?php // Function that calculates the...