$session->set() method

Set a session variable

  • You can optionally use a namespace with this method, to avoid collisions with other session variables. But if using namespaces we recommended using the dedicated getFor() and setFor() methods instead.
  • You can also get or set non-namespaced session values directly (see examples).

Examples

// Set value "Bob" to session variable named "firstName"
$session->set('firstName', 'Bob');

// You can retrieve the firstName now, or any later request
$firstName = $session->get('firstName');

// outputs: Hello Bob
echo "Hello $firstName";
// Setting and getting a session value directly
$session->firstName = 'Bob';
$firstName = $session->firstName;

Usage

// basic usage
$session->set($key, $value);

// usage with all arguments
$session->set($key, $value, mixed $_value = null);

Arguments

NameType(s)Description
keystring, object

Name of session variable to set (or object for namespace)

valuestring, mixed

Value to set (or name of variable, if first argument is namespace)

_value (optional)mixed

Value to set if first argument is namespace. Omit otherwise.

Return value

$this

Object instance it was called from (method supports fluent interface).


$session methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #519
    In the 519th issue of ProcessWire Weekly we'll check out a new third party module called RockForms, introduce the latest ProcessWire core updates, and more. Read on!
    Weekly.pw / 20 April 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer