ホームページ バックエンド開発 PHPチュートリアル PHP FTP タイプ (ファイルのコピー、移動、削除、ディレクトリの作成など)

PHP FTP タイプ (ファイルのコピー、移動、削除、ディレクトリの作成など)

Jun 13, 2016 pm 12:47 PM
ftp gt path this

php ftp クラス (ファイルのコピー、移動、削除、ディレクトリの作成など)
ファイルのコピー、移動、削除、ディレクトリの作成などの操作を完了できる優れた FTP 操作クラス。必要な友人はそれを参照できます。

この記事の元のリンク: http://www.jbxue.com/article/7669.html

1. FTP クラス

<?php
/**
* 作用:FTP类( 拷贝、移动、删除文件/创建目录 )
* site http://www.jbxue.com
*/
class class_ftp
{
     public $off; // 返回操作状态(成功/失败)

    public $conn_id; // FTP连接

     /**
      * 方法:FTP连接
      * @FTP_HOST -- FTP主机
      * @FTP_PORT -- 端口
      * @FTP_USER -- 用户名
      * @FTP_PASS -- 密码
      */
    function __construct($FTP_HOST,$FTP_PORT,$FTP_USER,$FTP_PASS)
     {
        $this->conn_id = @ftp_connect($FTP_HOST,$FTP_PORT) or die("FTP服务器连接失败");
         @ftp_login($this->conn_id,$FTP_USER,$FTP_PASS) or die("FTP服务器登陆失败");
         @ftp_pasv($this->conn_id,1); // 打开被动模拟
    }

    /**
      * 方法:上传文件
      * @path -- 本地路径
      * @newpath -- 上传路径
      * @type -- 若目标目录不存在则新建
      */
    function up_file($path,$newpath,$type=true)
     {
         if($type) $this->dir_mkdirs($newpath);
        $this->off = @ftp_put($this->conn_id,$newpath,$path,FTP_BINARY);
         if(!$this->off) echo "文件上传失败,请检查权限及路径是否正确!";
     }

    /**
      * 方法:移动文件
      * @path -- 原路径
      * @newpath -- 新路径
      * @type -- 若目标目录不存在则新建
      */
    function move_file($path,$newpath,$type=true)
     {
         if($type) $this->dir_mkdirs($newpath);
        $this->off = @ftp_rename($this->conn_id,$path,$newpath);
         if(!$this->off) echo "文件移动失败,请检查权限及原路径是否正确!";
     }

    /**
      * 方法:复制文件
      * 说明:由于FTP无复制命令,本方法变通操作为:下载后再上传到新的路径
      * @path -- 原路径
      * @newpath -- 新路径
      * @type -- 若目标目录不存在则新建
      */
    function copy_file($path,$newpath,$type=true)
     {
        $downpath = "c:/tmp.dat";
        $this->off = @ftp_get($this->conn_id,$downpath,$path,FTP_BINARY);// 下载

        if(!$this->off) echo "文件复制失败,请检查权限及原路径是否正确!";
        $this->up_file($downpath,$newpath,$type);
     }

    /**
      * 方法:删除文件
      * @path -- 路径
      */
    function del_file($path)
     {
        $this->off = @ftp_delete($this->conn_id,$path);
         if(!$this->off) echo "文件删除失败,请检查权限及路径是否正确!";
     }

    /**
      * 方法:生成目录
      * @path -- 路径
      */
    function dir_mkdirs($path)
     {
        $path_arr = explode('/',$path); // 取目录数组
        $file_name = array_pop($path_arr); // 弹出文件名
        $path_div = count($path_arr); // 取层数
        foreach($path_arr as $val) // 创建目录
        {
             if(@ftp_chdir($this->conn_id,$val) == FALSE)
             {
                $tmp = @ftp_mkdir($this->conn_id,$val);
                 if($tmp == FALSE)
                 {
                     echo "目录创建失败,请检查权限及路径是否正确!";
                     exit;
                 }
                 @ftp_chdir($this->conn_id,$val);
             }
         }
        for($i=1;$i<=$path_div;$i++) // 回退到根
        {
             @ftp_cdup($this->conn_id);
         }
     }

    /**
      * 方法:关闭FTP连接
      */
    function close()
     {
         @ftp_close($this->conn_id);
     }

}// class class_ftp end
?>
ログイン後にコピー


2 .
<?php
$ftp = new class_ftp('192.168.100.143',21,'user','pwd'); // 打开FTP连接
//$ftp->up_file('aa.txt','a/b/c/cc.txt'); // 上传文件
//$ftp->move_file('a/b/c/cc.txt','a/cc.txt'); // 移动文件
//$ftp->copy_file('a/cc.txt','a/b/dd.txt'); // 复制文件
//$ftp->del_file('a/b/dd.txt'); // 删除文件
$ftp->close(); // 关闭FTP连接
?>
ログイン後にコピー
に電話します。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Huawei GT3 ProとGT4の違いは何ですか? Huawei GT3 ProとGT4の違いは何ですか? Dec 29, 2023 pm 02:27 PM

多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

nginx リバースプロキシ FTP サーバーをセットアップする方法 nginx リバースプロキシ FTP サーバーをセットアップする方法 May 17, 2023 am 09:31 AM

1. nginx をインストールする 2. vsftpd をインストールする 3. nginx 構成ファイル nginx.conf を変更する 3.1 最初の行に ftp ユーザー userftpuser を追加する; 3.2 関連するパスサーバーを構成する { listen80; #nginx プロキシポート server_namelocalhost; #ftp サーバーアドレスの場所/ image{ root /home/ftpuser; #プロキシ FTP サーバーのフォルダーの絶対パス Indexftpuser; #ようこそページを設定します

Go での FTP の使用: 完全ガイド Go での FTP の使用: 完全ガイド Jun 17, 2023 pm 06:31 PM

インターネットの急速な発展に伴い、ファイル転送プロトコル (FTP) は常に重要なファイル転送方法となっています。 Go 言語では、FTP を使用してファイルを転送することが多くの開発者のニーズとなる可能性があります。しかし、Go言語でのFTPの使い方がわからない人も多いのではないでしょうか。この記事では、FTPサーバーへの接続からファイル転送まで、Go言語でFTPを使う方法と、エラーや例外の処理方法について解説します。 FTP 接続の作成 Go 言語では、標準の「net」パッケージを使用して FTP に接続できます。

Linux システムの PATH 環境変数を設定する手順 Linux システムの PATH 環境変数を設定する手順 Feb 18, 2024 pm 05:40 PM

Linux システムで PATH 環境変数を設定する方法 Linux システムでは、PATH 環境変数を使用して、システムがコマンド ラインで実行可能ファイルを検索するパスを指定します。 PATH 環境変数を正しく設定すると、任意の場所でシステム コマンドやカスタム コマンドを実行できるようになります。この記事では、Linux システムで PATH 環境変数を設定する方法と詳細なコード例を紹介します。現在の PATH 環境変数を表示する ターミナルで次のコマンドを実行して、現在の PATH 環境変数を表示します: echo$P

PHPとFTP:Webサイト開発における複数部門間でのファイル共有を実現 PHPとFTP:Webサイト開発における複数部門間でのファイル共有を実現 Jul 28, 2023 pm 01:01 PM

PHPとFTP:Webサイト開発における複数部門間でのファイル共有を実現 インターネットの発展に伴い、情報発信や事業推進にWebサイトプラットフォームを利用する企業が増えています。ただし、複数の部門間でのファイル共有とコラボレーションをどのように実現するかが問題になります。この場合、PHP と FTP は最も一般的に使用されるソリューションの 1 つになります。この記事では、Webサイト開発においてPHPとFTPを使って複数部門間でのファイル共有を実現する方法を紹介します。 1. FTP の概要 FTP (FileTransferPr)

Linux での FTP コマンドは何ですか? Linux での FTP コマンドは何ですか? Mar 21, 2023 am 09:59 AM

Linux での FTP コマンドには、1. ftp コマンド、2. close コマンド、3. disconnect コマンド、4. open コマンド、5. user コマンド、6. account コマンド、7. bye コマンド、8. quit コマンド、9. help が含まれます。コマンド ; 10. rhelp コマンド; 11. ascii コマンド; 12. binary/bi コマンド; 13. bell コマンドなど

PHP 経由で FTP サーバー上のディレクトリとファイルを比較する方法 PHP 経由で FTP サーバー上のディレクトリとファイルを比較する方法 Jul 28, 2023 pm 02:09 PM

PHP を使用して FTP サーバー上のディレクトリとファイルを比較する方法 Web 開発では、ローカル ファイルと FTP サーバー上のファイルを比較して、2 つのファイル間の一貫性を確保する必要がある場合があります。 PHP は、この機能を実装するためのいくつかの関数とクラスを提供します。この記事では、PHP を使用して FTP サーバー上のディレクトリとファイルを比較する方法を紹介し、関連するコード例を示します。まず、FTP サーバーに接続する必要があります。 PHP は、FTP サーバーを確立するための ftp_connect() 関数を提供します。

Linux で FTP ユーザーを追加/削除し、権限を設定する方法 Linux で FTP ユーザーを追加/削除し、権限を設定する方法 May 12, 2023 pm 08:46 PM

1. 環境: ftp は vsftp です。ユーザー名は test に設定されています。制限されたパスは /home/test2 です。ルート ユーザーの下にユーザーを作成します: useradd-d/home/testtest#ユーザー テストを追加し、テスト ユーザーのホーム ディレクトリを /home/testpasswdtest#パスワードを設定しますtest user3. ユーザーの対応する権限設定を変更します: 1.usermod-s/sbin/nologintest#ユーザー テストは Telnet 不可、ftp のみを制限します2.usermod-s/bin/bashtest#ユーザー テストは通常​​に戻ります 3.usermod-d

See all articles