ဆောင်းပါးများ

Laravel - laravel Controllers ဆိုတာ ဘာလဲ။

MVC မူဘောင်တွင်၊ အက္ခရာ “C” သည် Controllers များအတွက် အတိုကောက်ဖြစ်ပြီး ဤဆောင်းပါးတွင် Laravel တွင် Controllers ကိုမည်သို့အသုံးပြုရမည်ကိုကျွန်ုပ်တို့တွေ့ရပါမည်။ အမြင်များနှင့် မော်ဒယ်များကြား တိုက်ရိုက်လမ်းကြောင်းအဖြစ် လုပ်ဆောင်သည်။ ဤဆောင်းပါးတွင် Laravel တွင် controllers များဖန်တီးခြင်းနှင့်တပ်ဆင်နည်းကိုကျွန်ုပ်တို့တွေ့မြင်ရသည်။

Creare un controller laravel တွင်

ဖန်တီးရန် controllerကျွန်ုပ်တို့အသုံးပြုနေသောလည်ပတ်မှုစနစ်အရ၊ ကျွန်ုပ်တို့အသုံးပြုနေသော command prompt သို့မဟုတ် terminal ကိုဖွင့်ပြီး controller ကိုအသုံးပြု၍ အောက်ပါ command ကိုရိုက်ထည့်ပါ။ Artisan CLI (Command Line Interface).

php artisan make:controller <controller-name> --plain

အစားထိုးပါ။ <controller-name> မင်းနာမည်နဲ့ controller. ဒါက ဖန်တီးပေးပါလိမ့်မယ်။ controller. ဟိ controller ဖန်တီးထားသည်ကို ကြည့်ရှုနိုင်ပါသည်။ app/Http/Controllers .

အခြေခံ coding အချို့ကို သင့်အတွက် လုပ်ဆောင်ပြီးဖြစ်ကာ သင့်စိတ်ကြိုက် coding ကို သင်ထည့်သွင်းနိုင်သည်ကို သင်တွေ့ရပါမည်။ ဟိ controller ဖန်တီးထားသော web.php ကို အောက်ပါ syntax ဖြင့် ခေါ်နိုင်သည်။

syntax
Route::get(‘base URI’,’controller@method’);
နမူနာ

1 ဖန်တီးရန် အောက်ပါ command ကို run ပါ။ MyController

php artisan make:controller MyController

2 - အောင်မြင်စွာလုပ်ဆောင်ပြီးနောက်၊ သင်သည်အောက်ပါ output ကိုရလိမ့်မည်။

3 - ကျွန်ုပ်တို့ဖန်တီးထားသော controller ကိုတွေ့လိမ့်မည်။ app/Http/Controller/MyController.php အချို့သော အခြေခံကုဒ်များဖြင့် ရေးသားထားပြီး လိုအပ်သလို ပြောင်းလဲမှုများ ပြုလုပ်နိုင်ပါသည်။

ထိန်းချုပ်သူ အလယ်တန်းဝဲ

ငါတို့မြင်ပြီးပြီ။ middleware ပြီးတော့ ငါတို့က အဲဒါကို တွဲသုံးလို့ရတယ်။ controller. ဟိ middleware ၎င်းကို controller route သို့မဟုတ် controller constructor အတွင်းတွင်လည်း သတ်မှတ်ပေးနိုင်သည်။ နည်းလမ်းကို သုံးနိုင်ပါတယ်။ middleware assign လုပ်ဖို့ middleware al controller. ဟိ middleware မှတ်ပုံတင်ထားသော အချို့သောနည်းလမ်းများကို ကန့်သတ်နိုင်သည်။ controller.

လမ်းကြောင်းတွင် အလယ်တန်းဆော့ဖ်ဝဲကို တာဝန်ပေးခြင်း
Route::get('profile', [
   'middleware' => 'auth',
   'uses' => 'UserController@showProfile'
]);

ဤတွင် ကျွန်ုပ်တို့သည် ပရိုဖိုင်လမ်းကြောင်းရှိ UserController သို့ စစ်မှန်ကြောင်းအထောက်အထားပြသည့် အလယ်တန်းဆော့ဖ်ဝဲကို သတ်မှတ်ပေးနေသည်။

ထိန်းချုပ်သူတည်ဆောက်သူအတွင်း အလယ်အလတ်ဝဲလ်တာဝန်ကို ထမ်းဆောင်ခြင်း။
<?php

namespace App\Http\Controllers;

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

class MyController extends Controller {
   public function __construct() {
      $this->middleware('auth');
   }
}

ဤတွင်ကျွန်ုပ်တို့တာဝန်ပေးအပ်သည်။ middleware စစ်မှန်ကြောင်းအထောက်အထားပြခြင်း နည်းလမ်းကို အသုံးပြု middleware constructor တွင် MyController .

မှတ်ရန် $this->middleware() အဆင်ပြေတယ် တစ်ကိုယ်တော် constructor မှာ တာဝန်ပေးရင် ငါတို့ခေါ်ရင် $this->middleware() တိကျသော controller method မှ၊ ၎င်းသည် မည်သည့်အမှားအယွင်းကိုမျှ မချပြသော်လည်း Middleware သည် အမှန်တကယ် အလုပ်မလုပ်ပါ။

ဤရွေးချယ်မှုသည် တရားဝင်သော်လည်း၊ ပုဂ္ဂိုလ်ရေးအရ အလယ်တန်းဆော့ဖ်ဝဲ အားလုံးကို ကြိုက်ပါတယ်။ routesအားလုံးကိုရှာရမဲ့နေရာက ပိုရှင်းနေတာကြောင့်ပါ။ middleware.

နမူနာ

1 - အောက်ပါ ကုဒ်လိုင်းများကို ဖိုင်ထဲသို့ ထည့်ကြပါစို့ routes/web.php ကယ်တင်ပါ။

<?php
Route::get('/mycontroller/path',[
   'middleware' => 'First',
   'uses' => 'MyController@showPath'
]);

2 - တစ်ခုဖန်တီးကြရအောင် middleware ခေါ်ခဲ့သည် FirstMiddleware အောက်ပါကုဒ်မျဉ်းကို run ခြင်းဖြင့်။

php artisan make:middleware FirstMiddleware

3 : နည်းလမ်းတွင် အောက်ပါကုဒ်ကို ထည့်ပါ။ ကိုင်တွယ် del FirstMiddleware တွင်ဖန်တီးခဲ့သည်။ app/http/Middleware .

<?php

namespace App\Http\Middleware;
use Closure;

class FirstMiddleware {
   public function handle($request, Closure $next) {
      echo '<br>First Middleware';
      return $next($request);
   }
}

4 - တစ်ခုဖန်တီးကြရအောင် middleware ခေါ်ခဲ့သည် SecondMiddleware အောက်ပါ command ကို run ခြင်းဖြင့်။

php artisan make:middleware SecondMiddleware

5 : handle method တွင် အောက်ပါကုဒ်ကို ထည့်ကြပါစို့ SecondMiddleware တွင်ဖန်တီးခဲ့သည်။ app/http/Middleware .

ဆန်းသစ်တီထွင်မှုသတင်းလွှာ
ဆန်းသစ်တီထွင်မှုဆိုင်ရာ အရေးကြီးဆုံးသတင်းများကို လက်လွတ်မခံပါနဲ့။ ၎င်းတို့ကို အီးမေးလ်ဖြင့် လက်ခံရန် စာရင်းသွင်းပါ။
<?php

namespace App\Http\Middleware;
use Closure;

class SecondMiddleware {
   public function handle($request, Closure $next) {
      echo '<br>Second Middleware';
      return $next($request);
   }
}

6 : တစ်ခုဖန်တီးလိုက်ရအောင် controller ခေါ်ခဲ့သည် MyController အောက်ပါလိုင်းကို run ခြင်းဖြင့်။

php artisan make:controller MyController

7 - url ကိုအောင်မြင်စွာလုပ်ဆောင်ပြီးနောက်၊ သင်သည်အောက်ပါ output ကိုရလိမ့်မည် -

8 - အောက်ပါကုဒ်ကို ဖိုင်ထဲသို့ ကူးထည့်ပါ။ app/Http/MyController.php.

<?php

namespace App\Http\Controllers;

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

class MyController extends Controller {
   public function __construct() {
      $this->middleware('Second');
   }
   public function showPath(Request $request) {
      $uri = $request->path();
      echo '<br>URI: '.$uri;
      
      $url = $request->url();
      echo '<br>';
      
      echo 'URL: '.$url;
      $method = $request->method();
      echo '<br>';
      
      echo 'Method: '.$method;
   }
}

9 - ယခု သင်မရှိသေးပါက အောက်ပါ command ကို run ခြင်းဖြင့် php internal web server ကိုစလိုက်ရအောင်။

php artisan serve

10 – အောက်ပါ URL ကို ဝင်ကြည့်ပါ။

http://localhost:8000/mycontroller/path

11 - အောက်ပါပုံတွင်ပြထားသည့်အတိုင်း output ပေါ်လာလိမ့်မည်။

အလယ်တန်းဆော့ဖ်ဝဲနှစ်ခုလုံးနီးပါး ပါဝင်သော်လည်း တစ်ခုသာရှိသည်။

Controller di restful resource

မကြာခဏဆိုသလို အက်ပလီကေးရှင်းတစ်ခုကို ဖန်တီးတဲ့အခါ တစ်ခုခုလုပ်ရမယ်။ CRUD (Create, Read, Update, Delete)Laravel သည် ဤအလုပ်ကို လွယ်ကူစေသည်။ ဖန်တီးလိုက်ရုံပါပဲ။ controller နှင့် Laravel သည် လုပ်ဆောင်ချက်များအတွက် နည်းလမ်းအားလုံးကို အလိုအလျောက် ပံ့ပိုးပေးမည်ဖြစ်သည်။ CRUD. ဖိုင်ရှိ နည်းလမ်းအားလုံးသို့ လမ်းကြောင်းတစ်ခုတည်းကိုလည်း မှတ်တမ်းတင်နိုင်သည်။ route.php.

နမူနာ

1 : controller ဟုခေါ်သော ဖန်တီးပါ။ MyController အောက်ပါ command ကို run ခြင်းဖြင့်။

php artisan make:controller MyController

2 : အောက်ပါကုဒ်ကိုထည့်ပါ။ app/Http/Controllers/MyController.php

<?php

namespace App\Http\Controllers;

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

class MyController extends Controller {
   public function index() {
      echo 'index';
   }
   public function create() {
      echo 'create';
   }
   public function store(Request $request) {
      echo 'store';
   }
   public function show($id) {
      echo 'show';
   }
   public function edit($id) {
      echo 'edit';
   }
   public function update(Request $request, $id) {
      echo 'update';
   }
   public function destroy($id) {
      echo 'destroy';
   }
}

3 - ဖိုင်ထဲမှာ အောက်ပါကုဒ်မျဉ်းကို ထည့်လိုက်ရအောင် routes/web.php .

Route::resource('my','MyController');

4 - ယခုကျွန်ုပ်တို့သည် ထိန်းချုပ်သူအား အရင်းအမြစ်ဖြင့် မှတ်ပုံတင်ခြင်းဖြင့် MyController ၏ နည်းလမ်းအားလုံးကို မှတ်ပုံတင်ထားပါသည်။ အောက်တွင် အရင်းအမြစ်ထိန်းချုပ်သူမှ စီမံခန့်ခွဲသည့် လုပ်ဆောင်ချက်များဇယားဖြစ်သည်။

ကြိယာpathလှုပ်ရှားမှုလမ်းကြောင်းအမည်
GET/ ငါ့အညွှန်းကိန်းmy. အညွှန်း
GET/my/createဖန်တီးmy.create
POST/ ငါ့စတိုးဆိုင်my.store
GET/my/{my}ပြသmy.ရှိုး
GET/my/{my}/တည်းဖြတ်ပြင်ဆင်ရန်my.edit
PUT/Patch/my/{my}update ကိုmy.update
ဖျက်ရန်/my/{my}ဖျက်ဆီးငါ့။ ဖျက်ဆီး

5 - အောက်ဖော်ပြပါဇယားတွင်ပြသထားသည့် URL များကို run ကြည့်ပါ။

URL ကိုဖေါ်ပြချက်ထွက်ပေါက်
http://localhost:8000/myMyController.php ၏ အညွှန်းနည်းလမ်းကို လုပ်ဆောင်ပါ။အညွှန်းကိန်း
http://localhost:8000/my/createMyController.php ၏ ဖန်တီးမှုနည်းလမ်းကို လုပ်ဆောင်ပါ။creare
http://localhost:8000/my/1MyController.php ၏ show method ကို လုပ်ဆောင်ပါ။ပြသ
http://localhost:8000/my/1/editMyController.php ၏ တည်းဖြတ်နည်းကို လုပ်ဆောင်ပါ။ပြင်ဆင်ရန်

Ercole Palmeri

ဆန်းသစ်တီထွင်မှုသတင်းလွှာ
ဆန်းသစ်တီထွင်မှုဆိုင်ရာ အရေးကြီးဆုံးသတင်းများကို လက်လွတ်မခံပါနဲ့။ ၎င်းတို့ကို အီးမေးလ်ဖြင့် လက်ခံရန် စာရင်းသွင်းပါ။

မကြာသေးမီဆောင်းပါးများ

Excel တွင် ဒေတာနှင့် ဖော်မြူလာများကို အကောင်းဆုံး စုစည်းနည်း၊ ကောင်းမွန်စွာ ပြီးသော ခွဲခြမ်းစိတ်ဖြာမှု

Microsoft Excel သည် ဒေတာခွဲခြမ်းစိတ်ဖြာခြင်းအတွက် ရည်ညွှန်းကိရိယာဖြစ်ပြီး၊ ဒေတာအတွဲများကို စုစည်းရန်အတွက် အင်္ဂါရပ်များစွာပါရှိသောကြောင့်...

14 မေလ 2024

အရေးကြီးသော Walliance Equity Crowdfunding ပရောဂျက်နှစ်ခုအတွက် အပြုသဘောဆောင်သော ကောက်ချက်- Jesolo Wave Island နှင့် Milano Via Ravenna

Walliance၊ SIM နှင့် Real Estate Crowdfunding နယ်ပယ်ရှိ ဥရောပရှိ ခေါင်းဆောင်များအကြား ပလပ်ဖောင်းသည် 2017 ခုနှစ်မှ စတင်ပြီး ပြီးစီးကြောင်းကြေငြာသည်...

13 မေလ 2024

Filament ဆိုတာ ဘာလဲ ၊ Laravel Filament ကို ဘယ်လိုသုံးမလဲ။

Filament သည် အပြည့်အ၀ အစိတ်အပိုင်းများစွာကို ပံ့ပိုးပေးသည့် "အရှိန်မြှင့်" Laravel ဖွံ့ဖြိုးတိုးတက်မှုဘောင်တစ်ခုဖြစ်သည်။ ၎င်းသည် လုပ်ငန်းစဉ်ကို ရိုးရှင်းစေရန် ဒီဇိုင်းထုတ်ထားခြင်းဖြစ်သည်...

13 မေလ 2024

Artificial Intelligences ထိန်းချုပ်မှုအောက်တွင်

«ကျွန်ုပ်၏ ဆင့်ကဲဖြစ်စဉ်ကို ပြီးမြောက်ရန် ပြန်သွားရမည်၊ ကျွန်ုပ်သည် ကွန်ပျူတာအတွင်း၌ မိမိကိုယ်ကို ပရောဂျက်လုပ်ကာ သန့်စင်သော စွမ်းအင်ဖြစ်လာမည်ဖြစ်သည်။ အခြေချပြီးသည်နှင့်…

10 မေလ 2024

Google ၏ ဉာဏ်ရည်တုအသစ်သည် DNA၊ RNA နှင့် "ဘဝ၏ မော်လီကျူးများအားလုံး" ကို နမူနာယူနိုင်သည်

Google DeepMind သည် ၎င်း၏ ဉာဏ်ရည်တုမော်ဒယ်၏ ပိုမိုကောင်းမွန်သော ဗားရှင်းကို မိတ်ဆက်ပေးနေသည်။ ပိုမိုကောင်းမွန်သော မော်ဒယ်အသစ်သည် ထောက်ပံ့ပေးရုံသာမက…

9 မေလ 2024

Laravel ၏ Modular Architecture ကို စူးစမ်းလေ့လာခြင်း။

၎င်း၏ကြော့ရှင်းသော syntax နှင့် အစွမ်းထက်သောအင်္ဂါရပ်များကြောင့် ကျော်ကြားသော Laravel သည် မော်ဂျူလာဗိသုကာအတွက် ခိုင်မာသောအခြေခံအုတ်မြစ်ကိုလည်း ပေးပါသည်။ ဟိုမှာ…

9 မေလ 2024

Cisco Hypershield နှင့် Splunk ကိုဝယ်ယူခြင်း လုံခြုံရေးခေတ်သစ် စတင်ပါပြီ။

Cisco နှင့် Splunk တို့သည် ဖောက်သည်များအား ၎င်းတို့၏ အနာဂတ် လုံခြုံရေး လည်ပတ်ရေးဌာန (SOC) သို့ အရှိန်မြှင့်ရန် ကူညီပေးနေပါသည်...

8 မေလ 2024

စီးပွားရေးဘက်တွင်- ransomware ၏မသိသာသောကုန်ကျစရိတ်

Ransomware သည် ပြီးခဲ့သည့် နှစ်နှစ်တာကာလအတွင်း သတင်းများကို လွှမ်းမိုးထားသည်။ တိုက်ခိုက်မှုတွေကို လူအများစုက ကောင်းကောင်းသိကြတယ်...

6 မေလ 2024

သင့်ဘာသာစကားဖြင့် ဆန်းသစ်တီထွင်မှုကို ဖတ်ပါ။

ဆန်းသစ်တီထွင်မှုသတင်းလွှာ
ဆန်းသစ်တီထွင်မှုဆိုင်ရာ အရေးကြီးဆုံးသတင်းများကို လက်လွတ်မခံပါနဲ့။ ၎င်းတို့ကို အီးမေးလ်ဖြင့် လက်ခံရန် စာရင်းသွင်းပါ။

နောက်ဆက်တွဲကျွန်တော်တို့ကို

tag ကို

ကလေးစရိတ် ဆိုက်ဘာတိုက်ခိုက်မှု blockchain chatbot ချတ် gpt မိုဃ်းတိမ်ကို အကြောင်းအရာစျေးကွက် ဆိုက်ဘာတိုက်ခိုက်မှု ဆိုက်ဘာလုံခြုံရေး စားသုံးသူမှန်တယ်။ အီလက်ထရောနစ်ကူးသန်းရောင်း နေပြည်တော် ဆန်းသစ်တီထွင်မှုဖြစ်ရပ် gianfranco fedele google သြဇာလွှမ်းမိုးမှု သစ်လွင်မှု ငွေကြေးဆိုင်ရာ ဆန်းသစ်တီထွင်မှု incremental ဆန်းသစ်တီထွင်မှု ဆေးဘက်ဆိုင်ရာဆန်းသစ်တီထွင်မှု ဆန်းသစ်တီထွင်မှု ရေရှည်တည်တံ့ရေး နည်းပညာဆန်းသစ်တီထွင်မှု အတုထောက်လှမ်းရေး IOT ပိုးလောင်း စက်သင်ယူ metaverse microsoft nft ကွင်းထဲတွင် လူသားမရှိပါ။ php ပြန်ကြားချက် စက်ရုပ် seo SERP ဆော့ဖျဝဲ software ဒီဇိုင်း software development Software များအင်ဂျင်နီယာ ရေရှည်တည်တံ့မှု startup Thales သင်ခန်းစာ VPN web3