function file_usage_list

You are here

7 file.inc file_usage_list(stdClass $file)

Determines where a file is used.

Parameters

$file: A file object.

Return value

A nested array with usage data. The first level is keyed by module name, the second by object type and the third by the object id. The value of the third level contains the usage count.

See also

file_usage_add()

file_usage_delete()

Related topics

6 calls to file_usage_list()
FileDeleteTest::testInUse in modules/simpletest/tests/file.test
Tries deleting a file that is in use.
FileUsageTest::testGetUsage in modules/simpletest/tests/file.test
Tests file_usage_list().
file_delete in includes/file.inc
Deletes a file and its database record.
file_field_delete_file in modules/file/file.field.inc
Decrements the usage count for a file and attempts to delete it.
file_managed_file_validate in modules/file/file.module
An #element_validate callback for the managed_file element.

... See full list

File

includes/file.inc, line 642
API for handling file uploads and server file management.

Code

function file_usage_list(stdClass $file) {
  $result = db_select('file_usage', 'f')->fields('f', array('module', 'type', 'id', 'count'))->condition('fid', $file->fid)->condition('count', 0, '>')->execute();
  $references = array();
  foreach ($result as $usage) {
    $references[$usage->module][$usage->type][$usage->id] = $usage->count;
  }
  return $references;
}