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

Twitter updates

  • There’s a new modules directory on the ProcessWire site now up and running. In this post we’ll cover a few details about what’s changed and what’s new—More
    20 November 2020
  • ProcessWire 3.0.168 core updates — More
    26 October 2020
  • This week a 2nd new module for processing Stripe payments has been added to FormBuilder. Unlike our other Stripe Inputfield, this new one supports 3D Secure (SCA) payments. We’ll take a closer look at it in this post, plus a live demo— More
    16 October 2020

Latest news

  • ProcessWire Weekly #341
    In the 341st issue of ProcessWire Weekly we're going to check out the latest processwire.com blog post, introduce upcoming commercial module called NiftyPasswordsPlus, and check out a brand new site of the week. Read on!
    Weekly.pw / 21 November 2020
  • New ProcessWire modules directory
    There’s a new modules directory on the ProcessWire site now up and running. In this post we’ll cover a few details about what’s changed and what’s new.
    Blog / 20 November 2020
  • Subscribe to weekly ProcessWire news

“To Drupal, or to ProcessWire? The million dollar choice. We decided to make an early switch to PW. And in retrospect, ProcessWire was probably the best decision we made. Thanks are due to ProcessWire and the amazing system and set of modules that are in place.” —Unni Krishnan, Founder of PigtailPundits