NET_FTP

ディレクトリごとアップロードしたいときは、Net_FTP便利だと思った。

mb_language('Ja') ;
mb_internal_encoding('UTF-8') ;
require_once 'Net/FTP.php';

//FTP接続
$ftp_server = 'www.sample.net';
$ftp_user_name = 'xxxx';
$ftp_user_pass = 'xxxx';

//アップロードディレクト
$upload = '/test/';

//アップロード失敗時のメール送信
$admin = 'test@test.com';

$ftp = new Net_FTP($ftp_server, 21);
$ret = $ftp->login($ftp_user_name, $ftp_user_pass);
if(PEAR::isError($ret)){
$subject = 'FTP接続に失敗しました'; $message = '実行時間:'.date('Y年n日d日 h:i:s');
mb_send_mail($admin, $subject, $message,"From:test@test.com\n");
exit;
}

$ret = $ftp->putRecursive($upload, 'foo/', true);
if(PEAR::isError($ret)){
$subject = 'FTPアップロードに失敗しました'; $message = '実行時間:'.date('Y年n日d日 h:i:s')."\n".$ret;
mb_send_mail($admin, $subject, $message,"From:test@test.com\n");
exit;
}
$ftp->disconnect();
?>