directory.getFiles()を使用してファイルセキュリティを取得し、制限されたサブディレクトリへのアクセスを無視します
directory.getFiles()メソッドを使用してファイルシステム操作を実行する場合、アクセスできないディレクトリに遭遇すると、偶発的な異常を引き起こし、プロセスを中断する場合があります。この記事では、これらの保護されたフォルダーを無視し、指定されたディレクトリからアクセス可能なファイルを取得し続けることができるソリューションについて説明します。
提供されるコードフラグメントは、選択したディレクトリとサブディレクトリ内のファイルのリストを取得する試みです。ただし、アクセス許可がないファイルの存在は、不正アクセッセクセンスの異常をトリガーする可能性があり、それによりプロセスを停止する可能性があります。
この問題を克服するために、代替方法が導入されました:
マニュアルサブディレクトリイテレーション:- コードは、directory.getFiles()alldirectoriesオプションを使用していませんが、カレンダーディレクトリは1つずつ使用しています。各サブディレクトリについて、例外をエレガントに処理しながらファイルを取得しようとします。
変更されたコードは「FileAction」を使用して単一のファイルを処理します。特定のフォルダーを繰り返して、アクセス可能なファイルごとに「FileAction」を呼び出します。サブディレクターの場合、同じプロセスを再帰的に適用しようとします。サブディレクトリが異常を引き起こす場合、例外がキャプチャされ、プロセスが継続されます。
この戦略を実装することにより、コードはかけがえのないフォルダーを効果的に無視して、アクセス可能なファイルが中断なく取得されるようにすることができます。
以上がアクセスが制限されたサブディレクトリを無視して、ディレクトリからファイルを安全に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。