$sanitizer->filename() method

Name filter for ProcessWire filenames (basenames only, not paths)

This sanitizes a filename to be consistent with the name format in ProcessWire, ASCII-alphanumeric, hyphens, underscores and periods.


// basic usage
$string = $sanitizer->filename(string $value);

// usage with all arguments
$string = $sanitizer->filename(string $value, $beautify = false, int $maxLength = 128);



Filename to sanitize

beautify (optional)bool, int

Should be true when creating a file's name for the first time. Default is false. You may also specify Sanitizer::translate (or number 2) for the $beautify param, which will make it translate letters based on the InputfieldPageName custom config settings.

maxLength (optional)int

Maximum number of characters allowed in the filename

Return value


Sanitized filename

$sanitizer 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!
    Weekly.pw / 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

“The end client and designer love the ease at which they can update the website. Training beyond how to log in wasn’t even necessary since ProcessWire’s default interface is straightforward.” —Jonathan Lahijani