Get or set values in the current user session ($session API variable as a function)

This function behaves the same as the $session API variable, though does support optional shortcut arguments for getting or setting values.

Example

// Get a value from the session
$foo = session()->foo; // direct syntax
$foo = session()->get('foo'); // regular syntax
$foo = session('foo'); // shortcut syntax

// Set a value to the session
session()->foo = 'bar'; // direct syntax
session()->set('foo', 'bar');  // regular syntax
session('foo', 'bar'); // shortcut syntax

Usage

// basic usage
$session = session();

// usage with all arguments
$session = session(string $key = '', null $value = null);

Arguments

NameType(s)Description
key (optional)string

Optional property to get or set

value (optional)null

Optional value to set

Return value

Session null string array int float


Functions methods and properties

API reference based on ProcessWire core version 3.0.137

Twitter updates

  • ProcessWire 3.0.146 on the dev branch contains about 22 commits with a combination of useful upgrades and issue report resolutions, more details in this forum post: More
    22 November 2019
  • ProcessWire 3.0.144 and 3.0.145 add improved field template context override settings and include a new Inputfields API, along with numerous other issue fixes, optimizations and improvements to the core. More
    8 November 2019
  • ProcessWire 3.0.144 core updates: Upgraded overrides section in the field editor, a new Inputfields JS API, and more— More
    1 November 2019

Latest news

  • ProcessWire Weekly #291
    In the 291st issue of ProcessWire Weekly we're going to take a closer look at the latest core updates, check out a brand new third party module called ProcessHelpVideos, and introduce a new site of the week. Read on!
    Weekly.pw / 8 December 2019
  • New User Activity module
    Blog / 29 November 2019
  • Subscribe to weekly ProcessWire news

“Yesterday I sent the client a short documentation for their ProcessWire-powered website. Today all features already used with no questions. #cmsdoneright—Marc Hinse, Web designer/developer