for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace hamburgscleanest\DataTables\Helpers;
use Illuminate\Http\Request;
/**
* Class SessionHelper
* @package hamburgscleanest\DataTables\Helpers
*/
class SessionHelper {
const SESSION_STORAGE = 'data-tables.';
* @param Request $request
* @param string $key
* @return string
private function _getFormattedKey(Request $request, string $key): string
{
return
self::SESSION_STORAGE .
\preg_replace(
'/\.|\//',
'_',
\preg_replace('/(http|https):\/\//', '', $request->url())
) .
'.' . $key;
}
* @param mixed $sessionValue
public function saveState(Request $request, string $key, $sessionValue)
$request->session()->put($this->_getFormattedKey($request, $key), $sessionValue);
* @param null $default
* @return mixed
public function getState(Request $request, string $key, $default = null)
return $request->session()->get($this->_getFormattedKey($request, $key)) ?? $default;
public function removeState(Request $request, string $key)
$request->session()->remove($this->_getFormattedKey($request, $key));