zoukankan      html  css  js  c++  java
  • PHP: 使用CURL访问FTP

    今天要做FTP上传。本想用PHP自带的FTP函数来实现,结果发现这个模块没有编译进来,重新编译PHP太麻烦,改用其他方式实现吧

     FTP上传
    if (isset($_POST['Submit'])) {
        if (!empty($_FILES['upload']['name'])) {
            $ch = curl_init();
            $localfile = $_FILES['upload']['tmp_name'];
            $fp = fopen($localfile, 'r');
            curl_setopt($ch, CURLOPT_URL, 'ftp://ftp_user:ftp_password@ftp.domain.com/' . $_FILES['upload']['name']);
            curl_setopt($ch, CURLOPT_UPLOAD, 1);
            curl_setopt($ch, CURLOPT_INFILE, $fp);
            curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile));
            curl_exec($ch);
            $error_no = curl_errno($ch);
            curl_close($ch);
            if ($error_no == 0) {
                $error = 'File uploaded succesfully.';
            } else {
                $error = 'File upload error.';
            }
        } else {
            $error = 'Please select a file.';
        }
    }
    从FTP下载
    $curl = curl_init();
    $target_ftp_file = 'ftp://192.168.1.12:/filepath/target.txt'; //完整路径
    
    curl_setopt($curl, CURLOPT_URL, $target_ftp_file);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_VERBOSE, 1);
    curl_setopt($curl, CURLOPT_FTP_USE_EPSV, 0);
    curl_setopt($curl, CURLOPT_TIMEOUT, 300); // times out after 300s
    curl_setopt($curl, CURLOPT_USERPWD, "user_name:password"); //FTP用户名:密码// Sets up the output file
    $target_path = './data';
    if (is_dir($target_path)) {
        $outfile = fopen($target_path . '/' . dest . txt);
        curl_setopt($curl, CURLOPT_FILE, $outfile);
        $info = curl_exec($curl);
        fclose($outfile);
        $error_no = curl_errno($curl);
        curl_close($curl);
    }
    
    
    
  • 相关阅读:
    【剑指Offer】49把字符串转换成整数
    【剑指Offer】48不用加减乘除做加法
    【剑指Offer】47求1+2+3+...+n
    判断两个线段是否相交
    EM算法--原理
    理解KMP算法
    阿里校招笔试的一道逻辑题
    线性拟合之最小二乘方法和最小距离方法
    Oracle Net Manager 服务命名配置以及用PL/SQL 登陆数据库
    正则表达式总结
  • 原文地址:https://www.cnblogs.com/timelesszhuang/p/4480630.html
Copyright © 2011-2022 走看看