Pagefile::filedata() method

Get or set filedata

Filedata is any additional data that you want to store with the file’s database record.

  • To get a value, specify just the $key argument. Null is returned if request value is not present.
  • To get all values, omit all arguments. An associative array will be returned.
  • To set a value, specify the $key and the $value to set.
  • To set all values at once, specify an associative array for the $key argument.
  • To unset, specify boolean false (or null) for $key, and the name of the property to unset as $value.
  • To unset, you can also get all values, unset it from the retuned array, and set the array back.


// basic usage
$mixed = $pagefile->filedata();

// usage with all arguments
$mixed = $pagefile->filedata($key = '', $value = null);


key (optional)string, array, false, null

Specify array to set all file data, or key (string) to set or get a property, Or specify boolean false to remove key specified by $value argument.

value (optional)null, string, array, int, float

Specify a value to set for given property

Return value


Pagefile methods and properties

API reference based on ProcessWire core version 3.0.228

Latest news

  • ProcessWire Weekly #499
    In the 499th issue of ProcessWire Weekly we'll check out the latest weekly update from Ryan, introduce a new third party module called RockPdf, and more. Read on! / 3 December 2023
  • Using date range fields in ProcessWire
    This week we'll take a detailed look at the newest addition to the ProFields set of modules: the Date Range Fieldtype and Inputfield.
    Blog / 24 November 2023
  • Subscribe to weekly ProcessWire news

“We chose ProcessWire because of its excellent architecture, modular extensibility and the internal API. The CMS offers the necessary flexibility and performance for such a complex website like ProcessWire offers options that are only available for larger systems, such as Drupal, and allows a much slimmer development process.” —xport communication GmbH