AWS PHP SDKを使用して私たちのサーバーからS3にファイルを移動しました。移動後に削除します。 。しかし、私がこれをしようとすると、私はPHPの警告:Text file busy in /path/to/file
を取得します。PHP - AWS S3への移動後にローカルファイルを削除する - テキストファイル使用中エラー
私が正しく理解していれば、ファイルを削除しようとするとまだS3にアップロードされていると思います。私はS12のためにuploadComplete
のような何らかのコールバックを探しましたが、何も見つかりませんでした。ここで
は私のコードのサンプルです:
ので//Upload dir:
$result = false;
try{
$result = $this->aws['s3']->uploadDirectory(
$options['dir'],
$options['bucket'],
$options['key'], array(
'before' => function(\AWS\Command $command){
$command['ACL'] = 'public-read';
})
);
} catch (S3Exception $e) {
error_log('AWS ERR, failed to add object to bucket: '.$e->getMessage());
}
if ($result) {
//remove local copy
array_map('unlink', glob("$options['dir']/*.*"));
rmdir($options['dir']);
}
、どのように私はS3にアップロードした後、ディレクトリやファイルを削除することができますか?
はい、これは私がやっていることです: 'array_map( 'unlink'、glob(" $ options ['dir'] /*.* "));'。失敗しているのはこの行です。 –
@MP_Webbyディレクトリ内のディレクトリとファイルを削除する再帰関数を使用して回答を更新しました –