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.148

Twitter updates

  • New post in the blog about all the fun we had driving around a DDOS attack on our forums, how we got it back under control, and what we learned along the way. Plus PW 3.0.150 dev details and links! More
    7 February 2020
  • New post: ProcessWire core updates (January 31, 2020)— More
    31 January 2020
  • Weekly update for Jan 10, 2020—front-end file uploads in LoginRegisterPro with InputfieldFrontendFile module: More
    10 January 2020

Latest news

  • ProcessWire Weekly #301
    In the 301st issue of ProcessWire Weekly we're going to check out the latest core updates, introduce brand new third party modules RockDaterange and Modules Manager 2, and highlight a brilliant new site of the week. Read on!
    Weekly.pw / 15 February 2020
  • Driving around a DDOS attack
    Last Saturday we started getting hit with heavy traffic at the processwire.com support forums, and it soon became a full blown DDOS frenzy. This post describes all the fun, how we got it back under control, and what we learned along the way.
    Blog / 7 February 2020
  • Subscribe to weekly ProcessWire news

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK