①PHPで同時に複数のFTPサーバに接続できるのでしょうか。
送信が完了するまで別なファイルを送信することはできません。
ただ
FTPサーバに順次もしくは、同時に複数接続してファイルのアップロードおよびダウンロードするようなしくみを作成しようかと思っております。
とあるので同時に複数のFTPサーバへ接続し順次送信することはできるかと読み替えてお答えすると可能です。
php
1$host1="FTP先1";
2$host2="FTP先2";
3
4//FTP1接続
5$ftp1 = ftp_connect($host) or die("1接続エラー\n");
6//FTP2接続
7$ftp2 = ftp_connect($host) or die("2接続エラー\n");
8
9//FTP1ログイン
10ftp_login($ftp1,ユーザ,パスワード) or die("1ログインエラー\n");
11//FTP2ログイン
12ftp_login($ftp2,ユーザ,パスワード) or die("2ログインエラー\n");
13
14//FTP1へ送信
15ftp_put($ftp1, 送信先ファイルパス, 送信するファイルパス, FTP_ASCII) or die("1送信エラー\n");
16//FTP2へ送信
17ftp_put($ftp2, 送信先ファイルパス, 送信するファイルパス, FTP_ASCII) or die("2送信エラー\n");
18
19// FTP1切断
20ftp_close($ftp1);
21// FTP2切断
22ftp_close($ftp2);
23
※補足すると、一般的にPHPは常に逐次実行なので処理が終わる前に次の行に進むということはできません。
世間一般にあるマルチアップロードなど並列処理は、javascriptでPHPを複数起動させることで擬似的に並列処理できるように見せています。
②PHPでFTP接続中にファイルをアップロードしている途中に、ネットワークが途中で切れたり、FTPの接続に失敗といったフラグはとれるのでしょうか。
これはドキュメントの戻り値をよく読んでください。失敗した場合どうなるか書いています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/30 05:10
2019/05/30 05:12 編集