آموزش فریمورک لاراول ( session ) - جلسه 19
1397/10/15 10:27 , سامان یزدان‌نیک

آموزش فریمورک لاراول ( session ) - جلسه 19

جلسات برای ذخیره اطلاعات در مورد کاربر در سراسر درخواست ها استفاده می شوند. لاراول داریورهای مختلفی را ارائه می دهد   فایل، کوکی، APC ، آرایه، Memcached ، Redis ،   و   بانک اطلاعاتی   برای رسیدگی به داده های جلسه. به طور پیش فرض، درایور فایل مورد استفاده قرار می گیرد زیرا سبک است. جلسه را می توان در فایل ذخیره شده در پیکربندی   config/session.php  ذخیره کرد.

دسترسی به اطلاعات جلسه

برای دسترسی به داده های جلسه، ما به یک نمونه از جلسه نیاز داریم که می تواند از طریق درخواست HTTP قابل دسترسی باشد. پس از گرفتن نمونه، می توانیم از آن استفاده کنیم   get ( ) method، که یک استدلال را  ، برای دریافت داده های جلسه می گیرد .

$ value = $ request-> session () -> get ('key')

شما می توانید از all ( )    استفاده کنید  یا برای دریافت تمام اطلاعات جلسه به جای آن از get()  استفاده کنید.

ذخيره اطلاعات جلسه

داده ها را می توان در جلسه با استفاده از   put()  استفاده کرد که این استدلال شامل key و value می‌شود.

$ request-> session ( ) -> put ('key'، 'value')؛

حذف داده های جلسه

  forget() روش برای حذف یک مورد از جلسه استفاده می شود. و استدلال key را حذف خواهد نمود

$request->session()->forget('key');

میتوان از flush به جای      forget  استفاده نمود که در این روش تمام سشن ها پاک می‌گردد در این صورت می‌توان از pull()   استفاده کرد که این روش حتی استدلال key  را نیز استفاده می کند. 

مثال

مرحله 1   - یک کنترلر به نام ایجاد کنید   SessionController   با اجرای فرمان زیر:

php artisan make:controller SessionController --plain

مرحله 2   - پس از اجرای موفق، خروجی زیر را دریافت خواهید کرد.

مرحله 3   - کد زیر را در یک فایل کپی کنید

برنامه / Http / Controllers / SessionController.php .

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class SessionController extends Controller {
   public function accessSessionData(Request $request){
      if($request->session()->has('my_name'))
         echo $request->session()->get('my_name');
      else
         echo 'No data in the session';
   }
   public function storeSessionData(Request $request){
      $request->session()->put('my_name','Virat Gandhi');
      echo "Data has been added to session";
   }
   public function deleteSessionData(Request $request){
      $request->session()->forget('my_name');
      echo "Data has been removed from session.";
   }
}

مرحله 4   - خطوط زیر را در آن اضافه کنید   app / Http / routes.php   فایل.

Route::get('session/get','SessionController@accessSessionData');
Route::get('session/set','SessionController@storeSessionData');
Route::get('session/remove','SessionController@deleteSessionData');

مرحله 5   - URL زیر را ببینید   داده ها را در جلسه تنظیم کنید

http: // localhost: 8000 / session / set

مرحله 6   - خروجی به صورت زیر در تصویر زیر نشان داده می شود.

مرحله 7   - URL زیر را ببینید   دریافت داده ها از جلسه.

http: // localhost: 8000 / session / get

گام 8   - خروجی به صورت زیر در تصویر زیر نشان داده می شود.

مرحله 9   - URL زیر را ببینید   حذف داده را وارد نمایید.

http: // localhost: 8000 / session / remove

مرحله 10   - شما یک پیام را در تصویر زیر نشان می دهید.

     

  برگرفته از : https://www.tutorialspoint.com/laravel/laravel_session.htm

از آخرین دوره های آموزشی و تخفیف ها مطلع شوید

با تکمیل فرم زیر ، از اخبار و اطلاعات به روز برنامه نویسی و تکنولوژی عقب نمانید

آخرین مطالب

آموزش جامع SQL Server (جلسه ۱۲)
آموزش جامع SQL Server (جلسه ۱۲)

دستور UPDATE در SQL Server برای تغییر داده‌های موجود در یک جدول، از دستور UPDATE به شکل زیر استفاده ...

آموزش جامع SQL Server (جلسه ۱۵)
آموزش جامع SQL Server (جلسه ۱۵)

دستور DROP TABLE در SQL Server گاهی، لازم است یک جدول که دیگر استفاده‌ای ندارد را حذف کنید. برای ...

آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)
آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)

بخش اول از آخرین مبحث دوره جامع آموزش SQL Server در جلسه قبلی بررسی شد. این مبحث که ...

آخرین دیدگاه ها

دیدگاه خود را درباره این پست بنویسید

فرم ارسال نظرات