ለአሁኑ ተጠቃሚ ውሂብን ለማቆየት ቀላል መንገዶች ናቸው። ይህ አጋዥ ስልጠና በላራቬል ውስጥ ከክፍለ-ጊዜዎች ጋር አብሮ ለመስራት መሰረታዊ ነገሮችን ይሰጥዎታል.
በላራቬል ውስጥ፣ ክፍለ ጊዜ መረጃን የሚያከማችበት፣ በተጠቃሚ የሚቀርቡ ጥያቄዎችን በትክክል የሚስተናገድበት መንገድ ነው። አንድ ተጠቃሚ የLaravel መተግበሪያን ሲጀምር ክፍለ ጊዜ ለዚያ ተጠቃሚ በራስ-ሰር ይጀምራል። የክፍለ ጊዜ ውሂብ በአገልጋዩ ላይ ተከማችቷል እና ልዩ መለያ ያለው ትንሽ ኩኪ ክፍለ ጊዜውን ለመለየት ወደ ተጠቃሚው አሳሽ ይላካል።
በበርካታ ገጾች ወይም ጥያቄዎች ላይ ለመጠቀም የሚፈልጉትን ውሂብ ለማከማቸት ክፍለ ጊዜን መጠቀም ይችላሉ። ለምሳሌ፣ ክፍለ-ጊዜውን ለተጠቃሚ ማረጋገጫ ሊጠቀሙበት ወይም በመተግበሪያዎ ላይ በክፍለ-ጊዜው ለመጠቀም የሚፈልጉትን ሌላ መረጃ ሊያከማቹ ይችላሉ።
ክፍለ-ጊዜዎችን በላራቬል ለመጠቀም በመጀመሪያ በፋይሉ ውስጥ ማንቃት አለብዎት config/session.php
የውቅረት. በዚህ ፋይል ውስጥ ከክፍለ-ጊዜዎች ጋር የተያያዙ የውቅረት መለኪያዎችን ማዘጋጀት ይቻላል. እንደ የክፍለ ጊዜው የቆይታ ጊዜ፣ የክፍለ ጊዜውን ውሂብ ለማከማቸት የሚጠቀመው ነጂ እና የክፍለ-ጊዜው ውሂብ የማከማቻ ቦታ።
ከዚህ በታች የፋይል ምሳሌ ነው። sessions.php
ከክፍለ ጊዜ ቆይታ 120 ሰከንድ ጋር, በማውጫው ውስጥ የተቀመጡ ፋይሎችን መጠቀም 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',
];
እንዲሁም በፋይሉ ውስጥ የአካባቢ ተለዋዋጮችን በመጠቀም ክፍለ-ጊዜውን ማዋቀር ይችላሉ። .env
. ለምሳሌ፣ የውሂብ ጎታውን ክፍለ ጊዜ ሾፌር ለመጠቀም እና የክፍለ ጊዜ ውሂብን በክፍለ-ጊዜ ሠንጠረዥ ውስጥ ለማከማቸት፣ ከ MySQL አይነት DB ጋር፣ የሚከተሉትን የአካባቢ ተለዋዋጮች ማዘጋጀት ይችላሉ።
SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_CONNECTION=mysql
SESSION_TABLE=sessions
በላራቬል ውስጥ ከክፍለ-ጊዜ ውሂብ ጋር ለመስራት ሦስት መንገዶች አሉ።
helper
ዴላ global session
;Request instance
. በእነዚህ ሁሉ አጋጣሚዎች፣ በክፍለ-ጊዜው ውስጥ ያከማቹት ውሂብ ክፍለ ጊዜው እስኪያልቅ ወይም በእጅ እስኪጠፋ ድረስ በተመሳሳዩ ተጠቃሚ በሚቀርቡ ጥያቄዎች ውስጥ ይገኛል።
በላራቬል ውስጥ, ተግባሩን በመጠቀም Global Session Helper
በማዕቀፉ የሚሰጡትን የክፍለ ጊዜ አገልግሎቶችን ለማግኘት ምቹ መንገድ ነው። በመተግበሪያዎ ውስጥ ከክፍለ-ጊዜ ውሂብን እንዲያከማቹ እና እንዲያነሱ ይፈቅድልዎታል። እንዴት እንደሚጠቀሙበት ምሳሌ ይኸውና 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();
እንዲሁም ቅድመ ዋጋን ማለፍ ይችላሉ።defiኒት ለተግባሩ ሁለተኛው መከራከሪያ session
በክፍለ-ጊዜው ውስጥ የተገለጸው ቁልፍ ካልተገኘ የሚመለሰው፡-
$value = session('key', 'default');
Session Request
በላራቬል ውስጥ፣ የክፍለ ጊዜ ጥያቄ ምሳሌ የኤችቲቲፒ ጥያቄን የሚወክል ነገርን የሚያመለክት እና ስለጥያቄው መረጃ እንደ የጥያቄ ዘዴ (GET፣POST፣ PUT፣ ወዘተ)፣ የጥያቄ URL፣ የጥያቄው ራስጌዎች እና የጥያቄው አካል ያሉ መረጃዎችን የያዘ ነው። . እንዲሁም ይህን መረጃ ለማግኘት እና ለመጠቀም የተለያዩ ዘዴዎችን ይዟል።
ብዙውን ጊዜ የ ምሳሌውን ይደርሳሉ Session Request
በተለዋዋጭ በኩል $request
በLaravel መተግበሪያ ውስጥ. ለምሳሌ፣ የረዳት ተግባሩን በመጠቀም ክፍለ ጊዜን በጥያቄ ምሳሌ ማግኘት ይቻላል። 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');
}
}
በዚህ ምሳሌ, ተለዋዋጭ $request
የክፍሉ ምሳሌ ነው። Illuminate\Http\Request
የአሁኑን HTTP ጥያቄ የሚወክል። ተግባሩ session
ጥያቄ ምሳሌ የክፍሉን ምሳሌ ይመልሳል Illuminate\Session\Store
ከክፍለ-ጊዜው ጋር አብሮ ለመስራት የተለያዩ ተግባራትን የሚሰጥ።
Ercole Palmeri
Coveware by Veeam የሳይበር ዘረፋ የአደጋ ምላሽ አገልግሎቶችን መስጠቱን ይቀጥላል። Coveware የፎረንሲክስ እና የማገገሚያ ችሎታዎችን ያቀርባል…
የመተንበይ ጥገና የዘይት እና ጋዝ ዘርፉን አብዮት እያደረገ ነው፣ ለዕፅዋት አስተዳደር ፈጠራ እና ንቁ አቀራረብ።…
የዩኬ ሲኤምኤ ስለ ቢግ ቴክ ባህሪ በአርቴፊሻል ኢንተለጀንስ ገበያ ላይ ማስጠንቀቂያ ሰጥቷል። እዚያ…
የሕንፃዎችን ኢነርጂ ውጤታማነት ለማሳደግ በአውሮፓ ህብረት የተቀረፀው የ"ኬዝ አረንጓዴ" ድንጋጌ የህግ አውጭ ሂደቱን በ…