Ìwé

Kini awọn akoko ni Laravel, iṣeto ni ati lilo pẹlu awọn apẹẹrẹ

Awọn akoko Laravel gba ọ laaye lati fipamọ alaye, ati paarọ rẹ laarin awọn ibeere ninu ohun elo wẹẹbu rẹ. 

Wọn jẹ ọna ti o rọrun lati tẹsiwaju data fun olumulo lọwọlọwọ. Ikẹkọ yii yoo fun ọ ni awọn ipilẹ ti ṣiṣẹ pẹlu awọn akoko ni Laravel.

Kini igba Laravel

Ni Laravel, igba kan jẹ ọna lati tọju alaye, lati mu awọn ibeere ti olumulo ṣe ni deede. Nigbati olumulo kan ba bẹrẹ ohun elo Laravel, igba kan yoo bẹrẹ laifọwọyi fun olumulo yẹn. Awọn data igba ti wa ni ipamọ sori olupin ati pe kuki kekere kan ti o ni idamo oto ni a fi ranṣẹ si ẹrọ aṣawakiri olumulo lati ṣe idanimọ igba naa.

O le lo igba lati fipamọ data ti o fẹ lati lo kọja awọn oju-iwe pupọ tabi awọn ibeere. Fun apẹẹrẹ, o le lo igba fun ijẹrisi olumulo tabi tọju alaye miiran ti o fẹ lati lo lakoko igba lori ohun elo rẹ.

Iṣeto akoko ni Laravel

Lati lo awọn akoko ni Laravel, o gbọdọ kọkọ mu wọn ṣiṣẹ ninu faili naa config/session.php ti iṣeto ni. Ninu faili yii o ṣee ṣe lati ṣeto awọn aye atunto ti o ni ibatan si awọn akoko. Fun apẹẹrẹ iye akoko igba, awakọ lati lo fun titoju data igba, ati ipo ibi ipamọ fun data igba. 

Faili naa ni awọn aṣayan atunto wọnyi:
  • Iwakọ: Ni pato awakọ igba iṣaajudefisetan lati lo. Laravel ṣe atilẹyin awọn awakọ igba pupọ: faili, kukisi, data data, apc, memcached, redis, dynamodb, ati orun;
  • s'aiye: Pato awọn nọmba ti iṣẹju ninu eyi ti awọn igba gbọdọ wa ni kà wulo;
  • pari_on_sunmọ: Ti o ba ṣeto si otitọ, igba naa yoo pari nigbati ẹrọ aṣawakiri olumulo ti wa ni pipade;
  • encrypt: otitọ tumọ si pe ilana yoo encrypt data igba ṣaaju ki o to fipamọ;
  • awọn faili: Ti o ba ti lo awakọ igba faili, aṣayan yii n ṣalaye ipo ibi ipamọ faili;
  • Isopọ: Ti o ba ti lo awakọ igba data, aṣayan yii ṣe alaye asopọ data lati lo;
  • tabili: Ti o ba ti lo awakọ igba data, aṣayan yii ṣe alaye tabili data lati lo lati tọju data igba;
  • lotiri: Orisirisi awọn iye ti a lo lati yan laileto iye kuki ID igba kan;
  • cookies: Aṣayan yii pato orukọ kuki ti yoo lo lati fi ID igba pamọ. Ọna, agbegbe, aabo, http_only ati awọn aṣayan same_site ni a lo lati tunto awọn eto kuki fun igba naa.

Ni isalẹ jẹ apẹẹrẹ ti faili kan sessions.php pẹlu igba akoko 120 aaya, lilo awọn faili ti o ti fipamọ ni awọn liana 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',

];

O tun le tunto igba pẹlu lilo awọn oniyipada ayika ninu faili naa .env. Fun apẹẹrẹ, lati lo awakọ igba ipamọ data ati data igba ipamọ ni tabili igba kan, pẹlu MySQL-type DB, o le ṣeto awọn oniyipada ayika wọnyi:

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

Eto igba Laravel

Awọn ọna mẹta lo wa lati ṣiṣẹ pẹlu data igba ni Laravel: 

  • lilo awọnhelper della global session;
  • lilo facade Ikoni;
  • nipasẹ a Request instance

Ni gbogbo awọn iṣẹlẹ wọnyi, data ti o fipamọ sinu igba yoo wa ni awọn ibeere atẹle ti olumulo kan naa ṣe titi ti igba akoko yoo fi pari tabi ti a fi ọwọ parẹ.

Iwe iroyin Innovation
Maṣe padanu awọn iroyin pataki julọ lori isọdọtun. Forukọsilẹ lati gba wọn nipasẹ imeeli.

Oluranlọwọ Ikoni Agbaye

Ni Laravel, lilo iṣẹ naa Global Session Helper o jẹ ọna ti o rọrun lati wọle si awọn iṣẹ igba ti a pese nipasẹ ilana. O gba ọ laaye lati fipamọ ati gba data lati igba inu ohun elo rẹ. Eyi jẹ apẹẹrẹ ti bi o ṣe le lo 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();

O tun le kọja iye iṣaajudefinite bi ariyanjiyan keji si iṣẹ naa session, eyi ti yoo da pada ti bọtini ti a ko ba ri ni igba:

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

Apeere ti Session Request

Ni Laravel, apẹẹrẹ ibeere igba kan tọka si ohun kan ti o ṣe aṣoju ibeere HTTP ati pe o ni alaye ninu ibeere naa, gẹgẹbi ọna ibeere (GET, POST, PUT, ati bẹbẹ lọ), URL ibeere, awọn akọle ti ibeere ati ara ibeere . O tun ni awọn ọna oriṣiriṣi ti o le ṣee lo lati gba ati ṣe afọwọyi alaye yii.

Ni deede o wọle si apẹẹrẹ ti Session Request nipasẹ oniyipada $request ni ohun elo Laravel. Fun apẹẹrẹ, igba kan le wọle nipasẹ apẹẹrẹ ibeere nipa lilo iṣẹ oluranlọwọ 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');
    }
}

Ni apẹẹrẹ yii, iyipada  $request o jẹ ẹya apẹẹrẹ ti awọn kilasi Illuminate\Http\Request, eyiti o duro fun ibeere HTTP lọwọlọwọ. Iṣẹ naa session ìbéèrè ìbéèrè pada ohun apẹẹrẹ ti awọn kilasi Illuminate\Session\Store, eyi ti o pese orisirisi awọn iṣẹ fun ṣiṣẹ pẹlu awọn igba.

Ercole Palmeri

Iwe iroyin Innovation
Maṣe padanu awọn iroyin pataki julọ lori isọdọtun. Forukọsilẹ lati gba wọn nipasẹ imeeli.

Awọn iwe ti o ṣẹṣẹ

Ojo iwaju wa Nibi: Bawo ni Ile-iṣẹ Sowo ti n ṣe Iyika Eto-ọrọ Agbaye

Ẹka ọgagun jẹ agbara eto-aje agbaye ni otitọ, eyiti o ti lọ kiri si ọja 150 bilionu kan…

1 May 2024

Awọn olutẹwe ati OpenAI fowo si awọn adehun lati ṣe ilana ṣiṣan ti alaye ti a ṣe ilana nipasẹ Imọran Artificial

Ni ọjọ Aarọ to kọja, Awọn akoko Iṣowo kede adehun kan pẹlu OpenAI. FT ṣe iwe-aṣẹ iwe-akọọlẹ agbaye rẹ…

30 Kẹrin 2024

Awọn sisanwo ori ayelujara: Eyi ni Bii Awọn iṣẹ ṣiṣanwọle jẹ ki o sanwo lailai

Awọn miliọnu eniyan sanwo fun awọn iṣẹ ṣiṣanwọle, san awọn idiyele ṣiṣe alabapin oṣooṣu. O jẹ ero ti o wọpọ pe o…

29 Kẹrin 2024

Veeam ṣe ẹya atilẹyin okeerẹ julọ fun ransomware, lati aabo si esi ati imularada

Coveware nipasẹ Veeam yoo tẹsiwaju lati pese awọn iṣẹ esi iṣẹlẹ ikọlu cyber. Coveware yoo funni ni awọn oniwadi ati awọn agbara atunṣe…

23 Kẹrin 2024