PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.12.1
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.12.1
5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / vendor / prefixed / symfony / http-foundation / Session / SessionUtils.php
matomo / app / vendor / prefixed / symfony / http-foundation / Session Last commit date
Attribute 1 year ago Flash 2 years ago Storage 1 year ago Session.php 1 year ago SessionBagInterface.php 2 years ago SessionBagProxy.php 1 year ago SessionFactory.php 2 years ago SessionFactoryInterface.php 2 years ago SessionInterface.php 1 year ago SessionUtils.php 1 year ago
SessionUtils.php
56 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 namespace Matomo\Dependencies\Symfony\Component\HttpFoundation\Session;
12
13 /**
14 * Session utility functions.
15 *
16 * @author Nicolas Grekas <p@tchwork.com>
17 * @author Rémon van de Kamp <rpkamp@gmail.com>
18 *
19 * @internal
20 */
21 final class SessionUtils
22 {
23 /**
24 * Finds the session header amongst the headers that are to be sent, removes it, and returns
25 * it so the caller can process it further.
26 */
27 public static function popSessionCookie(string $sessionName, string $sessionId) : ?string
28 {
29 $sessionCookie = null;
30 $sessionCookiePrefix = sprintf(' %s=', urlencode($sessionName));
31 $sessionCookieWithId = sprintf('%s%s;', $sessionCookiePrefix, urlencode($sessionId));
32 $otherCookies = [];
33 foreach (headers_list() as $h) {
34 if (0 !== stripos($h, 'Set-Cookie:')) {
35 continue;
36 }
37 if (11 === strpos($h, $sessionCookiePrefix, 11)) {
38 $sessionCookie = $h;
39 if (11 !== strpos($h, $sessionCookieWithId, 11)) {
40 $otherCookies[] = $h;
41 }
42 } else {
43 $otherCookies[] = $h;
44 }
45 }
46 if (null === $sessionCookie) {
47 return null;
48 }
49 header_remove('Set-Cookie');
50 foreach ($otherCookies as $h) {
51 header($h, \false);
52 }
53 return $sessionCookie;
54 }
55 }
56