Access GET, POST or COOKIE input variables and more ($input API variable as a function)

  • Default behavior with no arguments is to return the $input API variable.
  • If given just a $type argument (like “get” or “post”), it will return a WireInputData object for that type.
  • If given a $type and $key arguments, it will return the value, or null if not present.
  • If $sanitizer argument given, the returned value will also be run through the given sanitizer.
  • If the $sanitizer argument is an array, the returned input value must be within the given list, or null if not (3.0.125+).
  • If $fallback argument given, it will return the fallback value if input value was not present or not valid (3.0.125+).
  • See the WireInput::get() method for all options.

Example

// Can be used the same way as the $input API variable
// In examples below the “post” can also be “get” or “cookie”
$input = input(); // Returns $input API var (WireInput)
$post = input()->post(); // Returns $input->post (WireInputData instance)
$foo = input()->post('foo'); // Returns POST variable “foo”
$bar = input()->post('bar', 'text'); // Returns “bar” after text sanitizer (3.0.125+)
$s = input()->post('s', ['foo', 'bar', 'baz']); // POST var “s” must match given list (3.0.125+)

// You can also move the arguments all to the function call if you prefer:
$s = input('get', 'sort'); // Returns GET var “sort”
$s = input('get', 'sort', 'fieldName'); // Returns “sort” after “fieldName” sanitizer
$s = input('get', 'sort', ['title', 'created']); // Require sort to be one in given array (3.0.125+)
$s = input('get', 'sort', ['title', 'created'], 'title'); // Same as above, fallback to 'title' (3.0.125+)

Usage

// basic usage
$wireInput = input();

// usage with all arguments
$wireInput = input(string $type = '', string $key = '', string $sanitizer = null, $fallback = null);

Arguments

NameType(s)Description
type (optional)string

Optionally indicate "get", "post", "cookie" or "whitelist"

key (optional)string

If getting a value, specify name of input property containing value

sanitizer (optional)string

Optionally specify sanitizer name to run value through, or in 3.0.125+ may also be an array of allowed values.

fallback (optional)string, int, null

Value to fallback to if input not present or invalid

Return value

WireInput WireInputData array string int null


Functions methods and properties

API reference based on ProcessWire core version 3.0.185

Twitter updates

  • ProcessWire 3.0.192 (dev branch) contains 11 issue fixes and 5 pull requests, over 20 commits— More
    7 January 2022
  • ProcessWire 3.0.191 core updates: updates to the installer and the profile exporter module— More
    24 December 2021
  • This week ProcessWire went on a diet, trimming the core size from 15.5 MB down to 7.5 MB by moving optional site profiles into their own GitHub repos— More
    17 December 2021

Latest news

  • ProcessWire Weekly #402
    In the 402nd issue of ProcessWire Weekly we'll check out ProcessWire 3.0.193, highlight recent ProcessWire projects and resources, and more. Read on!
    Weekly.pw / 22 January 2022
  • ProcessWire 3.0.190 core updates
    ProcessWire 3.0.190 has 15 commits relative to 3.0.189 and contains a mixture of issue resolutions and feature additions. This post covers them all, in addition to updates for the PageAutosave and ProFields Table modules.
    Blog / 3 December 2021
  • Subscribe to weekly ProcessWire news

I just love the easy and intuitive ProcessWire API. ProcessWire rocks!” —Jens Martsch, Web developer