Метод all
Метод all класса Session предназначен для получения всех данных, хранящихся в текущей сессии. Он не принимает никаких параметров и возвращает ассоциативный массив, где ключами являются имена переменных сессии, а значениями - их содержимое. Этот метод удобно использовать для отладки или когда нужно получить всю информацию о состоянии пользователя.
Синтаксис
<?php
use Illuminate\Support\Facades\Session;
$res = Session::all();
?>
Пример
Давайте получим все данные сессии в контроллере и выведем их:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Session;
class SessionController extends Controller
{
public function index()
{
Session::put('user_id', 5);
Session::put('role', 'admin');
Session::put('locale', 'en');
$res = Session::all();
foreach ($res as $key => $value) {
echo $key . ': ' . $value;
}
}
}
?>
Результат выполнения кода:
"user_id: 5"
"role: admin"
"locale: en"
Пример
Давайте используем метод all для проверки наличия определённых данных в сессии:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Session;
class SessionController extends Controller
{
public function check()
{
$res = Session::all();
if (isset($res['user_id'])) {
echo 'User ID: ' . $res['user_id'];
} else {
echo 'User not found in session';
}
}
}
?>
Результат выполнения кода при наличии данных:
"User ID: 5"
Пример
Давайте используем метод all вместе с другими методами сессии для демонстрации полного набора данных:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Session;
class SessionController extends Controller
{
public function demo()
{
Session::put('user', 'john_doe');
Session::put('cart', ['item1', 'item2']);
Session::put('last_login', '2026-09-08');
$res = Session::all();
echo 'Total session entries: ' . count($res);
echo 'nSession data: ' . print_r($res, true);
}
}
?>
Результат выполнения кода:
"Total session entries: 3"
"Session data: Array ( [user] => john_doe [cart] => Array ( [0] => item1 [1] => item2 ) [last_login] => 2026-09-08 )"