/**
* 機能: FTP 操作クラス (ファイルのコピー、移動、削除/ディレクトリの作成)
* ファイルのリモートアップロード
* 時刻: 2011216
* 著者: Liu Meng
*
*/
class class_ftp
{
public $off; // 操作ステータス (成功/失敗) を返す
public $conn_id; // FTP 接続
/**
* メソッド: FTP 接続
* @FTP_HOST – FTP ホスト
* @FTP_PORT – ポート
* @FTP_USER – ユーザー名
* @FTP_PASS – パスワード
*/
関数 __construct($FTP_HOST,$FTP_PORT,$FTP_USER,$FTP_PASS) @ftp_login($this->conn_id,$FTP_USER,$FTP_PASS) または die("FTP サーバーのログインに失敗しました")
@ftp_pasv( $this->conn_id,1); // パッシブシミュレーションをオンにする
}
/**
* メソッド: ファイルをアップロードします
* @path – ローカルパス
* @newpath – アップロードパス
* @type – ターゲットディレクトリが存在しない場合は、新しいディレクトリを作成します
*/
function up_file($path,$newpath,$type=false)
{
if($ type) $this->dir_mkdirs($newpath);
$thisds->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-& gt; conn_id, $ PATH, $ newpath);
if (! $ This-> off) 「携帯電話が故障しました。権限と元のパスが正しいか確認してください!」 type=true)
{
$downpath = "c:/tmp.dat";
$this->off = @ftp_get($ This-& gt; conn_id, $ double, $ path, ftp_binary);
if (! $ This-& gt; off) "ファイルのコピーに失敗しました。権限と元のパスが正しいかどうかを確認してください。 “; ftp_delete($this->conn_id,$path);
If(!$this->off) echo "ファイルの削除に失敗しました。権限とパスが正しいかどうかを確認してください。 ";
}
/**
* 方法: ファイルをコピーします
* 注: FTP にはコピー コマンドがないため、この方法の代替操作は次のとおりです: ダウンロードして新しいパスにアップロードします
* @path – 元のパス
* @newpath – 新しいパス
* @type -- ターゲット ディレクトリが存在しない場合は、新しいディレクトリを作成します
*/
function dir_mkdirs($path)
{
$path_arr =explode('/',$path); // ディレクトリ配列を取得します
$file_name = array_pop($path_arr) // ファイル名をポップします
$path_div = count( $ $ tmp = @ ftp_mkdir(conn_id、$ exit、$ val);
/**
* 方法: FTP 接続を閉じる
*/
function close()
>
//使い方
$ftp = new class_ftp('172.15.0.46',21,'zengzhi','aipu2010'); ftp->up_file($_FILES['Game_src']['tmp_name'],'/G/'.$_FILES['Game_src']['name']);
$ftp->close(); $src_img='http://172.15.0.46/G/'.$_FILES['Game_src']['名前'];