资讯专栏INFORMATION COLUMN

php导出cvs,并且上传到ftp服务器

LiuRhoRamen / 3006人阅读

摘要:导出上传后的文件名称表头标题转码数据转码时间格式化上传文件到参数格式主机用户名密码文件名前缀文件的目录生成文件连接登录上传后的文件名称本地要上传的文件上传第一个文件上传成功备注上传第二个空文件

    // 导出csv
    public function exportCSV($date = "2017-12-01",$prefix="a",$fileDir="b"){
        $CsvFile = $fileDir.$prefix.$this->format($date).".csv";        //上传后的文件名称
        $fp = fopen($CsvFile, "w");
        // 表头标题
        $header_data = ["Trading Platform ID(Login)","Client-First Name","Client-surname","Client-date of birth","Client-Country","National Identifier"];
        foreach ($header_data as $key => $value) {
            $header_data[$key] = iconv("utf-8", "gbk", $value);    //转码
        }
        fputcsv($fp, $header_data);
        // 数据
        $startDate = $date . " 00:00:00";
        $endDate = $date . " 23:59:59";
        $sql = "select Cln_ID,First_Name,Surname,Birth_Date,Country from cln_apply where (Input_Date>"$startDate" AND Input_Date<"$endDate")";
        $clnmodel = new ClnModel();
        $result = $clnmodel->findAll($sql);
        if($result){
            foreach ($result as $val) {
                $arr = (array)$val;
                foreach($arr as $k=>$v){
                    if($k == "Birth_Date"){
                        $v = substr($v,0,10);
                    }
                    $arr[$k] = iconv("utf-8", "gbk", $v);    //转码
                }
                fputcsv($fp, $arr);
            }
        }
    }
    // 时间格式化
    public function format($date){
        return join(explode("-",$date));
    }
    // 上传csv文件到Ftp        
    // 参数 $date 格式 YYYY-MM-DD
    public function uploadCSV($date = "2017-12-01"){
        $host = "";        //FTP主机
        $user = "";        //ftp用户名
        $pass = "";        //ftp密码
        
        $prefix = "ATXUK_client_";    //文件名前缀
        $fileDir = __DIR__."/../mifi_report/";        //Mifi_Report文件的目录
        // 生成CSV文件
        $CSV = $this->exportCSV($date,$prefix,$fileDir);
        // 连接登录ftp
        $conn = ftp_connect($host) or die("Could not connect");
        ftp_login($conn, $user, $pass);
        
        $remote = $prefix.$this->format($date).".csv";        //上传后的文件名称
        $local = $fileDir.$remote;        //本地要上传的文件
        $csvresult = ftp_put($conn, $remote, $local, FTP_BINARY);    //上传第一个文件.csv
        // var_dump($csvresult);
        if($csvresult){
            $nullFile = $prefix.$this->format($date).".done";        //上传成功备注
            $nullresult = ftp_put($conn, $nullFile, $fileDir."mifi.done", FTP_ASCII);    //上传第二个空文件.done
            // var_dump($nullresult);
        }
        ftp_close($conn);
    }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26249.html

相关文章

  • JavaScript中的图片处理与合成(一)

    摘要:中的图片处理与合成一引言图片处理现在已经成为了我们生活中的刚需,想必大家也经常有这方面的需求。实际前端业务中,也经常会有很多的项目需要用到图片加工和处理。 JavaScript中的图片处理与合成(一) 引言: 图片处理现在已经成为了我们生活中的刚需,想必大家也经常有这方面的需求。实际前端业务中,也经常会有很多的项目需要用到图片加工和处理。由于过去一段时间公司的业务需求,让我在这方面积累...

    Charles 评论0 收藏0
  • 挖站否免费PHP空间申请与使用-2G空间20GB流量电信CN2 GIA线路DA面板

    前段时间主服务器被攻击的影响,导致挖站否免费PHP空间运行不稳定,这一段时间一直处理备份和数据恢复的事情。同时,由于WHMCS的成本问题,最终决定将原来的免费PHP空间转入到挖站否后台共同管理,故写了这篇挖站否免费PHP空间申请与使用教程。挖站否免费空间从2018年开始提供(挖站否免费空间申请与使用),线路从原来的普通线路升级到CN2一直到现在的电信CN2 GIA,空间后台由Cpanel到后来的D...

    番茄西红柿 评论0 收藏2638
  • 生产力工具 - PHPSTORM(xdebug, database, ftp, git, restf

    摘要:确实是一款非常好用的生产力工具他的代码提示检错重构调试都非常的棒而且自带的文件历史功能好用的我都快哭了帮我挽救了没来得及提交到的代码其实不只可以写写包括也是极好的的功能他全部都有并且还有很多的好用的插件针对的针对的比如比如官方网站环境说明环 showImg(https://segmentfault.com/img/bVCT8T?w=600&h=360); PHPSTORM 确实是一款非...

    Zack 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<