Articles

Dè a th’ ann an seiseanan ann an Laravel, rèiteachadh agus cleachdadh le eisimpleirean

Leigidh seiseanan Laravel leat fiosrachadh a stòradh, agus iomlaid a dhèanamh eadar iarrtasan san tagradh lìn agad. 

Tha iad nan dòigh furasta air dàta a chumail a’ dol don neach-cleachdaidh gnàthach. Bheir an oideachadh seo dhut bunaitean a bhith ag obair le seiseanan ann an Laravel.

Dè th’ ann an seisean Laravel

Ann an Laravel, tha seisean na dhòigh air fiosrachadh a stòradh, gus dèiligeadh gu ceart ri iarrtasan bho neach-cleachdaidh. Nuair a thòisicheas neach-cleachdaidh tagradh Laravel, thèid seisean a thòiseachadh gu fèin-ghluasadach airson an neach-cleachdaidh sin. Tha dàta an t-seisean air a stòradh air an fhrithealaiche agus thèid briosgaid bheag le aithnichear sònraichte a chuir gu brabhsair an neach-cleachdaidh gus an seisean aithneachadh.

Faodaidh tu seisean a chleachdadh gus dàta a stòradh a tha thu airson a chleachdadh thar iomadh duilleag no iarrtas. Mar eisimpleir, dh’ fhaodadh tu an seisean a chleachdadh airson dearbhadh luchd-cleachdaidh no fiosrachadh eile a stòradh a tha thu airson a chleachdadh tron ​​​​t-seisean air an tagradh agad.

Rèiteachadh seisean ann an Laravel

Gus seiseanan ann an Laravel a chleachdadh, feumaidh tu an comas a chuir san fhaidhle an toiseach config/session.php de rèiteachadh. Anns an fhaidhle seo tha e comasach crìochan rèiteachaidh a shuidheachadh co-cheangailte ri seiseanan. A leithid fad an t-seisein, an draibhear airson a chleachdadh airson dàta an t-seisein a stòradh, agus an àite stòraidh airson dàta an t-seisein. 

Tha na roghainnean rèiteachaidh a leanas aig an fhaidhle:
  • dràibhear: Sònraich an draibhear ro-sheiseandefideònach a chleachdadh. Bidh Laravel a’ toirt taic do ghrunn dhraibhearan seisean: faidhle, briosgaid, stòr-dàta, apc, memcached, redis, dynamodb agus array;
  • beatha: Sònraich an àireamh de gheàrr-chunntasan anns am feumar beachdachadh air an t-seisean dligheach;
  • crìochnachadh_on_dùin: Ma thèid a shuidheachadh gu fìor, thig an seisean gu crìch nuair a bhios brabhsair a' chleachdaiche dùinte;
  • Encrypt: tha fìor a' ciallachadh gun crioptaich am frèam dàta seisean mus tèid a stòradh;
  • faidhlichean: Ma thèid an dràibhear seisean faidhle a chleachdadh, sònraichidh an roghainn seo an t-àite stòraidh faidhle;
  • co-cheangailte: Ma thèid dràibhear seisean an stòr-dàta a chleachdadh, sònraichidh an roghainn seo an ceangal stòr-dàta ri chleachdadh;
  • Clàr: Ma thèid dràibhear seisean an stòr-dàta a chleachdadh, sònraichidh an roghainn seo clàr an stòr-dàta airson a chleachdadh gus dàta seisean a stòradh;
  • crannchuir: Sreath de luachan air an cleachdadh gus luach briosgaid ID seisean a thaghadh air thuaiream;
  • cookie: Tha an roghainn seo a' sònrachadh ainm a' bhriosgaid a thèid a chleachdadh gus ID an t-seisein a stòradh. Bithear a’ cleachdadh na roghainnean slighe, àrainn, tèarainte, http_only agus same_site gus na roghainnean briosgaid a rèiteachadh airson an t-seisein.

Gu h-ìosal tha eisimpleir de fhaidhle sessions.php le fad seisean 120 diogan, cleachdadh fhaidhlichean a tha air an stòradh san eòlaire framework/sessions:

<?php

use Illuminate\Support\Str;

return [
    'driver' => env('SESSION_DRIVER', 'file'),
    'lifetime' => env('SESSION_LIFETIME', 120),
    'expire_on_close' => false,
    'encrypt' => false,
    'files' => storage_path('framework/sessions'),
    'connection' => env('SESSION_CONNECTION', null),
    'table' => 'sessions',
    'store' => env('SESSION_STORE', null),
    'lottery' => [2, 100],
    'cookie' => env(
        'SESSION_COOKIE',
        Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
    ),
    'path' => '/',
    'domain' => env('SESSION_DOMAIN', null),
    'secure' => env('SESSION_SECURE_COOKIE'),
    'http_only' => true,

    'same_site' => 'lax',

];

Faodaidh tu cuideachd an seisean a rèiteachadh a’ cleachdadh caochladairean àrainneachd san fhaidhle .env. Mar eisimpleir, gus an draibhear seisean stòr-dàta a chleachdadh agus dàta seisean a stòradh ann an clàr seisean, le seòrsa MySQL DB, faodaidh tu na caochladairean àrainneachd a leanas a shuidheachadh:

SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_CONNECTION=mysql
SESSION_TABLE=sessions

Suidheachadh seisean Laravel

Tha trì dòighean ann a bhith ag obair le dàta seisean ann an Laravel: 

  • a' cleachdadh anhelper della global session;
  • a’ cleachdadh aghaidh an t-Seisein;
  • tro a Request instance

Anns na cùisean sin uile, bidh an dàta a bhios tu a’ stòradh san t-seisean ri fhaighinn ann an iarrtasan às deidh sin a nì an aon neach-cleachdaidh gus an tig an seisean gu crìch no gus an tèid a sgrios le làimh.

Leabhar-latha ùr-ghnàthachaidh
Na caill na naidheachdan as cudromaiche mu ùr-ghnàthachadh. Clàraich gus am faighinn air post-d.

Neach-cuideachaidh Seisean Cruinneil

Ann an Laravel, a 'cleachdadh a' ghnìomh Global Session Helper tha e na dhòigh goireasach faighinn gu na seirbheisean seisean a tha am frèam a’ toirt seachad. Leigidh e leat dàta a stòradh agus fhaighinn air ais bhon t-seisean san tagradh agad. Seo eisimpleir de mar a chleachdas tu am faidhle session helper:

// Store data in the session
session(['key' => 'value']);

// Retrieve data from the session
$value = session('key');

// Remove data from the session
session()->forget('key');

// Clearing the Entire Session
session()->flush();

Faodaidh tu cuideachd ro-luach a thoirt seachaddefinite mar an dàrna argamaid don ghnìomh session, a thèid a thilleadh mura lorgar an iuchair ainmichte san t-seisean:

$value = session('key', 'default');

Mar eisimpleir Session Request

Ann an Laravel, tha eisimpleir iarrtas seisean a’ toirt iomradh air nì a tha a’ riochdachadh iarrtas HTTP agus anns a bheil fiosrachadh mun iarrtas, leithid an dòigh tagraidh (GET, POST, PUT, msaa), URL iarraidh, cinn-cinn an iarrtais agus a’ bhuidheann iarrtais. . Tha grunn dhòighean ann cuideachd a dh'fhaodar a chleachdadh gus am fiosrachadh seo fhaighinn air ais agus a làimhseachadh.

Mar as trice gheibh thu cothrom air eisimpleir an Session Request tron chaochladair $request ann an tagradh Laravel. Mar eisimpleir, faodar faighinn gu seisean tro eisimpleir iarrtas a’ cleachdadh gnìomh an neach-cuideachaidh session().

use Illuminate\Http\Request;

class ExampleController extends Controller
{
   public function example(Request $request)
   {
       // Store data in the session using the put function
       $request->session()->put('key', 'value');

       // Retrieve data from the session using the get function
       $value = $request->session()->get('key');

       // Check if a value exists in the session using the has function:
       if ($request->session()->has('key')) {
           // The key exists in the session.
       }

       // To determine if a value exists in the session, even if its value is null:
       if ($request->session()->exists('users')) {
           // The value exists in the session.
       }

       // Remove data from the session using the forget function
       $request->session()->forget('key');
    }
}

Anns an eisimpleir seo, an caochlaideach  $request tha e na eisimpleir den chlas Illuminate\Http\Request, a tha a’ riochdachadh an iarrtas HTTP gnàthach. An gnìomh session iarrtas eisimpleir a’ tilleadh eisimpleir den chlas Illuminate\Session\Store, a bheir seachad diofar dhleastanasan airson a bhith ag obair leis an t-seisean.

Ercole Palmeri

Leabhar-latha ùr-ghnàthachaidh
Na caill na naidheachdan as cudromaiche mu ùr-ghnàthachadh. Clàraich gus am faighinn air post-d.

Altan o chionn ghoirid

Tha an àm ri teachd an seo: Mar a tha gnìomhachas an luingeis ag ath-nuadhachadh eaconamaidh na cruinne

Tha an roinn cabhlaich na fhìor chumhachd eaconamach cruinne, a tha air gluasad a dh’ ionnsaigh margaidh 150 billean ...

1 Cèitean 2024

Bidh foillsichearan agus OpenAI a’ soidhnigeadh aontaidhean gus an sruth fiosrachaidh air a phròiseasadh le Artificial Intelligence a riaghladh

Diluain sa chaidh, dh’ ainmich an Financial Times aonta le OpenAI. Tha FT a’ ceadachadh a naidheachdas aig ìre cruinne…

30 Giblean 2024

Pàighidhean air-loidhne: Seo mar a bheir Seirbheisean Sruthaidh ort pàigheadh ​​​​gu bràth

Bidh milleanan de dhaoine a’ pàigheadh ​​airson seirbheisean sruthadh, a’ pàigheadh ​​cìsean ballrachd mìosail. Tha e na bheachd cumanta gu bheil thu…

29 Giblean 2024

Tha Veeam a’ nochdadh an taic as coileanta airson ransomware, bho dhìon gu freagairt agus faighinn seachad air

Leanaidh Coveware le Veeam a’ toirt seachad seirbheisean freagairt tachartas saidhbear. Bidh Coveware a’ tabhann comasan forensics agus leigheas…

23 Giblean 2024

Leugh Ùr-ghnàthachadh sa chànan agad

Leabhar-latha ùr-ghnàthachaidh
Na caill na naidheachdan as cudromaiche mu ùr-ghnàthachadh. Clàraich gus am faighinn air post-d.

Lean dhuinn