You are here

public function ServiceAuditFilesNotInDatabase::auditfilesNotInDatabaseGetFiles in Audit Files 8.2

Same name and namespace in other branches
  1. 8.3 src/ServiceAuditFilesNotInDatabase.php \Drupal\auditfiles\ServiceAuditFilesNotInDatabase::auditfilesNotInDatabaseGetFiles()
  2. 4.x src/ServiceAuditFilesNotInDatabase.php \Drupal\auditfiles\ServiceAuditFilesNotInDatabase::auditfilesNotInDatabaseGetFiles()

Retrieves a list of files in the given path.

Parameters

string $path: The path to search for files in.

string $exclusions: The imploded list of exclusions from configuration.

Return value

array The list of files and diretories found in the given path.

1 call to ServiceAuditFilesNotInDatabase::auditfilesNotInDatabaseGetFiles()
ServiceAuditFilesNotInDatabase::auditfilesNotInDatabaseGetFilesForReport in src/ServiceAuditFilesNotInDatabase.php
Get files for report.

File

src/ServiceAuditFilesNotInDatabase.php, line 252

Class

ServiceAuditFilesNotInDatabase
Define all methods that are used on Files not in database functionality.

Namespace

Drupal\auditfiles

Code

public function auditfilesNotInDatabaseGetFiles($path, $exclusions) {
  $config = $this->configFactory
    ->get('auditfiles.settings');
  $file_system_stream = $config
    ->get('auditfiles_file_system_path');
  $real_files_path = $real_files_path = $this->fileSystem
    ->realpath($file_system_stream . '://');

  // The variable to store the data being returned.
  $file_list = [];
  $scan_path = empty($path) ? $real_files_path : $real_files_path . DIRECTORY_SEPARATOR . $path;

  // Get the files in the specified directory.
  $files = array_diff(scandir($scan_path), [
    '..',
    '.',
  ]);
  foreach ($files as $file) {

    // Check to see if this file should be included.
    if ($this
      ->auditfilesNotInDatabaseIncludeFile($real_files_path . DIRECTORY_SEPARATOR . $path, $file, $exclusions)) {

      // The file is to be included, so add it to the data array.
      $file_list[] = [
        'file_name' => $file,
        'path_from_files_root' => $path,
      ];
    }
  }
  return $file_list;
}