ftp_systype can be a good way of checking the state of a connection, since PHP doesn't have a better system to check the state of an ftp connection (is_connected would be nice).
if (!($type = ftp_systype($conn_id))) {
echo "FTP connection has failed! Trying again.\n";
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);
}
ftp_systype
(PHP 4, PHP 5)
ftp_systype — リモート FTP サーバのシステム型 ID を返す
説明
string ftp_systype
( resource $ftp_stream
)
リモート FTP サーバのシステム型 ID を返します。
パラメータ
- ftp_stream
-
FTP 接続のリンク ID 。
返り値
リモートシステム型を返します。エラー時には FALSE を返します。
例
Example#1 ftp_systype() の例
<?php
// 接続を確立する
$ftp = ftp_connect('ftp.example.com');
ftp_login($ftp, 'user', 'password');
// システム型を取得する
if ($type = ftp_systype($ftp)) {
echo "Example.com is powered by $type\n";
} else {
echo "Couldn't get the systype";
}
?>
上の例の出力は、たとえば 以下のようになります。
Example.com is powered by UNIX
ftp_systype
Buckwheat469 at hotmail dot com
27-Jul-2006 01:41
27-Jul-2006 01:41