PHPのftp_close()関数とは?使い方とサンプルコードを解説
概要
PHPのftp_close()関数は、確立済みのFTP接続を閉じるために使用される関数です。FTPサーバーとの通信が終わった後は、リソースを解放するために必ずこの関数で接続を切断することをおすすめします。
構文
ftp_close(con);
パラメータ
con − 閉じる対象となるFTP接続リソース。
ftp_connect()によって返された接続を指定します。
戻り値
ftp_close()関数は、接続の切断に成功した場合は TRUE を、失敗した場合は FALSE を返します。
使用例
次の例では、まずFTPサーバーにログインし、ディレクトリを移動しながら作業を行い、最後に接続を閉じています。
<?php
$ftp_server="ftp.example.com";
$ftp_user="kevin";
$ftp_pass="tywg61gh";
$con = ftp_connect($ftp_server);
$res = ftp_login($con, $ftp_user, $ftp_pass);
ftp_chdir($con, 'demo');
echo ftp_pwd($con);
if (ftp_cdup($con)) {
echo "Directory changed!\n";
} else {
echo "Directory change not successful!\n";
}
echo ftp_pwd($con);
ftp_close($con);
?>
補足ポイント
- 一度
ftp_close()で接続を閉じると、同じリソースは再利用できません。再接続が必要な場合は、改めてftp_connect()を呼び出す必要があります。 - スクリプトの実行終了時にもFTP接続は自動的に閉じられますが、明示的に閉じておくことでサーバーリソースを効率的に管理できます。
- 処理中にエラーが発生した場合も、確実に接続を閉じられるよう、必要に応じて例外処理や終了処理の中で
ftp_close()を呼び出すと安全です。
-
PHPのftp_cdup()関数とは?使い方とサンプルコードを解説
ftp_cdup()関数は、FTPサーバー上の現在のディレクトリを、その親ディレクトリ(1階層上のディレクトリ)へ変更します。サブディレクトリで作業中に、上位の階層へ戻りたい場合に便利な関数です。 構文 ftp_cdup(con); パラメータ con − FTP接続のリソース(ftp_connect()で取得した接続)を指定します。 戻り値 ftp_cdup()関数は、ディレクトリの移動に成功した場合にTRUEを、失敗した場合にFALSEを返します。戻り値を判定することで、移動が正しく行われたかどうかを確認できます。 使用例 以下は、現在のディレクトリを親ディレクトリへ移動させる
-
PHPのftp_alloc()関数とは?使い方とサンプルコードを解説
ftp_alloc() 関数は、FTPサーバーにファイルをアップロードする前に、そのファイル用のディスクスペースを事前に確保するための関数です。内部的にはFTPの「ALLO」コマンドを送信し、サーバー側に十分な空き容量が存在するかどうかを確認できます。対応していないサーバーもありますが、大きなファイルを扱う際にはアップロード失敗の防止に役立ちます。 構文 ftp_alloc(connection, size_of_file, res); パラメータ connection − 使用するFTP接続(ftp_connect() で取得した接続リソース) size_of_file − 確保する容量(