PHP连接FTP服务的简单实现

摘要:
PHP连接FTP服务:127.0.1','port'=˃'21','timeout'=˃'90',];//连接FTPfunctionconnect{$this-˃connect=@ftp_connect;$login=@ftp-login;if(!

PHP连接FTP服务:

<?php

class Ftp
{
    private $connect;
    private $getback;

    /**
     * ftp连接信息
     * @var array
     */
    private $ftpConnInfo = [
        'host' => '127.0.0.1',
        'port' => '21',
        'timeout' => '90',
    ];

    //连接FTP
    function connect ($user, $passwd)
    {
        $this->connect = @ftp_connect(...$this->ftpConnInfo);
        $login = @ftp_login($this->connect, "{$user}", "{$passwd}");
        if ((!$this->connect)(!$login)) {
            echo "connect failed: {$this->ftpConnInfo['host']} for user {$user} 
";
            die;
        } else {
            echo "Connected success 
";
        }
    }

    /**
     * 获取文件最后的修改时间
     * @param $remoteFile
     * @return int the last modified time as a Unix timestamp on success, or -1 on error
     */
    function lastmodtime ($remoteFile)
    {
        return ftp_mdtm($this->connect, $remoteFile);
    }

    /**
     * 更改当前目录
     * @param $directory
     * @return bool
     */
    function changedir ($directory)
    {
        return ftp_chdir($this->connect, $directory);
    }

    /**
     * 获取当前目录
     * @return string
     */
    function getdir ()
    {
        return ftp_pwd($this->connect);
    }

    /**
     * 获取目录中的文件列表
     * @param $directory
     * @return array
     */
    function getFilelist ($directory)
    {
        return ftp_nlist($this->connect, $directory);
    }

    /**
     * 设置被动模式是否开启,true开启
     * @param $pasvmode
     * @return bool
     */
    function setPasvmode ($pasvmode)
    {
        //把FTP服务器部署在防火墙或者NAT服务器的背后,
        //则采用主动操作模式的客户端只能够建立命令连接而无法进行文件传输
        return ftp_pasv($this->connect, $pasvmode);
    }

    /**
     * 退出ftp连接
     */
    function closeFtp ()
    {
        ftp_quit($this->connect);
    }
}

免责声明:文章转载自《PHP连接FTP服务的简单实现》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇修改linux内核启动logo及显示位置Appium(七):Appium API(一) 应用操作下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PHP curl函数模拟爬虫(操作cookie)

curl函数.操作cookie,模拟爬虫 模拟cookie刷贴实例: 1 <?php 2 $ch = curl_init(); 3 //保存该次请求的cookie内容到文件cookie.txt 4 curl_setopt($ch, CURLOPT_COOKIEJAR, ”E:/cookie.txt”); 5...

Eclipse+php插件+Xdebug搭建PHP完美开发/调试环境指南

 最近要开始使用Zend框架开发中型应用系统了,由于采用完全面向对象的框架思路开发程序,不光开发思想,先前的Editplus+Dreamweaver编辑器组合显然不能满足我的要求了。我的新环境初步定为Eclipse+PDT插件+Xdebug+apache(Unix平台最流行的WEB服务器平台)。   先前一直对dotNET、Java的IDE的代码自动嗅探、...

服务器架设:CentOS搭建LNMP详细教程(转)

目前流行的配置是Linux+Nginx+PHP+MySQL,简称LNMP。下面简单介绍一下配置方法。 一、安装CentOS和LNMP包。 安装CentOS 5.5,系统安装完后自带APACHE,先运行yum remove httpd,删除Apache! 用SSH登录LINUX,安装LNMP。 1、下载LNMP一键安装包: wget -c http://so...

在PHP中管理环境变量

在PHP中管理环境变量 现在我们都能用很多个编程语言开发,当我开始熟悉PHP时,我会忽略其它语言的特点。我用过其他语言(比如Node.js),但在PHP中没有看到一种轻松控制设置环境变量的方法,特别是在开发中。在Node.js中,dotenv库非常适合这种情况,后来我在PHP中,发现vlucas已经创建了phpdotenv,我准备将这个库应用到PHP项目中...

thinkphp5 连接SQLserver

1、PHP 7.0.x 添加SQLserver扩展 (1)7.0.x的扩展下载地址 Microsoft Drivers for PHP for SQL Server https://www.microsoft.com/en-us/download/details.aspx?id=20098 下载下来的 SQLSRV40.exe 右键解压得出下面的dll文件...

php array_keys()函数 语法

php array_keys()函数 语法 作用:返回包含数组中所有键名的一个新数组。直线电机选型 语法:array_keys(array,value,strict) 参数: 参数 描述 array 必需。规定数组。 value 可选。您可以指定键值,然后只有该键值对应的键名会被返回。 strict 可选。与value参数一起使用。可能的...