PluginProbe
Site Reviews / trunk
Site Reviews vtrunk
8.3.1 8.3.0 8.2.2 8.2.1 8.2.0 8.1.0 8.0.13 8.0.12 8.0.11 trunk 1.2.2 2.17.1 3.5.4 4.7.0 5.25.1 6.11.8 7.0.10 7.0.11 7.0.12 7.0.13 7.0.14 7.0.15 7.0.16 7.0.17 7.0.18 All 54 releases
site-reviews / plugin / Session.php

Session.php in Site Reviews trunk, at plugin/Session.php

51 lines 938 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace GeminiLabs\SiteReviews;
4
5 use GeminiLabs\SiteReviews\Helpers\Arr;
6
7 trait Session
8 {
9 protected array $session = [];
10
11 public function session(): Arguments
12 {
13 return glsr()->args($this->session);
14 }
15
16 public function sessionClear(): void
17 {
18 $this->session = [];
19 }
20
21 /**
22 * @param mixed $fallback
23 *
24 * @return mixed
25 */
26 public function sessionGet(string $key, $fallback = '')
27 {
28 return Arr::get($this->session, $key, $fallback);
29 }
30
31 /**
32 * @param mixed $fallback
33 *
34 * @return mixed
35 */
36 public function sessionPluck(string $key, $fallback = '')
37 {
38 $value = $this->sessionGet($key, $fallback);
39 unset($this->session[$key]);
40 return $value;
41 }
42
43 /**
44 * @param mixed $value
45 */
46 public function sessionSet(string $key, $value): void
47 {
48 $this->session[$key] = $value;
49 }
50 }
51