Artikoli

Laravel: iwebata ụzọ ụgbọ ala laravel

Ntugharị na Laravel na-enye ndị ọrụ ohere ịgafe arịrịọ ngwa niile gaa na onye njikwa kwesịrị ekwesị. Ọtụtụ ụzọ ndị bụ isi na Laravel na-amata ma nabata ihe njirimara Uniform Asset Identifier yana mmechi, na-enye ụzọ dị mfe na nkwuwapụta nke ụzọ ụzọ.

Kedu ihe bụ ụzọ (ụzọ)?

Ụzọ a bụ ụzọ iji mepụta URL arịrịọ maka ngwa gị. URL ndị a adịghị mkpa ka ejikọta ya na faịlụ ndị dị na weebụsaịtị ma bụrụ ndị mmadụ na-agụ na enyi SEO.

Na Laravel, a na-emepụta ụzọ n'ime folda le routes. A na-emepụta ha na faịlụ ahụ web.php maka weebụsaịtị, na n'ime api.php maka API.

Ndị a route e kenyere ndị otu middleware netwọk, na-egosipụta ọnọdụ nnọkọ na nchekwa CSRF. Ụzọ ndị dị na route/api.php ha enweghị obodo ma kenye ha na otu API middleware.
The tupu echichidefiLaravel nita na-abịa na ụzọ abụọ, otu maka webụ na otu maka API. Nke a bụ ụzọ maka webụ dị na ya dị web.php:

Route::get('/', function () {
   return view('welcome');
});

Kedu ihe bụ ụzọ na Laravel?

Ụzọ Laravel niile bụ definiti na faịlụ ụzọ dị n'ime ndekọ aha routes. Ngwa njikwa ụzọ, defietinyere na faịlụ ahụ App\Providers\RouteServiceProvider, na-ahụ maka ịhazi faịlụ ndị a na-akpaghị aka. Faịlụ route/web.php defina-enye ụzọ maka interface weebụ gị.

O kwere omume definweta ụzọ maka ọrụ njikwa a dị ka ndị a:

Route::get(‘user/{id}’, ‘UserController@show’);

Route::resource: usoro Route::resource na-arụpụta ụzọ niile bụ isi achọrọ maka ngwa ma jikwaa ya site na klaasị njikwa.

Mgbe arịrịọ dabara na ụzọ akọwapụtara URI, a na-akpọku usoro a show defiEmechara na njikwa App\Http\ControllersUserController, na-agafe paramita ụzọ na usoro.

Maka akụrụngwa, ịkwesịrị ịme ihe abụọ na ngwa ahụ Laravel. Nke mbụ, ịkwesịrị ịmepụta ụzọ akụrụngwa na Laravel nke na-enye fanye, melite, lelee na hichapụ ụzọ. Nke abụọ, mepụta ihe njikwa akụrụngwa nke na-enye usoro maka ntinye, imelite, ilele na ihichapụ.

The tupu echichidefiLaravel nita na-abịa na ụzọ abụọ: otu maka webụ na otu maka API. Nke a bụ ka ụzọ webụ dị na web.php:

Route::get(‘/’, function () {

return view(‘welcome’);

});

Laravel Middleware na-eme dị ka àkwà mmiri n'etiti arịrịọ na mmeghachi omume. Ọ nwere ike ịbụ ụfọdụ ụdị akụrụngwa nzacha.

Laravel arụ ọrụ na a etiti nke nwere ọrụ nke ikwenye ma akwadoro ngwa ndị ahịa ma ọ bụ na ọ bụghị. Ọ bụrụ na akwadoro onye ahịa, wee na-ebugharị redirects gaa na ibe ụlọ ma ọ bụ ibe nbanye.

Usoro maka route

Koodu gara aga definishes a ụzọ na home page. Mgbe ọ bụla ụzọ a natara arịrịọ get kwa /, ga-alaghachi view welcome

Ụzọ Laravel niile bụ definiti n'ime gi routing, nke dị n'ime ndekọ aha dei routes. N'ihi ya, l'AppProvidersRouteServiceProvider nke ngwa n'ahịrị ndekọ ndị a. Faịlụ route/web.php nwere ụzọ a na-ejikwa maka interface weebụ gị.

Usoro ụzọ dị nnọọ mfe. Mepee faịlụ kwesịrị ekwesị ('web.phpo `api.php) wee malite akara koodu na `Route:: `, na-esote arịrịọ ịchọrọ ikenye n'ụzọ ahụ kpọmkwem wee kọwapụta ọrụ a ga-arụ na-esote arịrịọ ahụ.

Laravel na-enye usoro ndị a:

  • get
  • post
  • put
  • delete
  • patch
  • options

Ụzọ ndị ahụ bụ definited na Laravel n'ime klas Route na HTTP, ụzọ ịzaghachi na nso, ma ọ bụ onye njikwa.

Otu esi emepụta ụzọ na Laravel

Ka anyị hụ ka ị ga-esi mepụta ụzọ nke gị na Laravel.

Ụzọ GET bụ isi

Ugbu a, m ga-emepụta ụzọ bụ isi nke ga-ebipụta tebụl oge nke 2.

Route::get('/table', function () {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * 2 = ". $i*2 ."<br>";
   }   
});

Na koodu dị n'elu, m mepụtara ụzọ arịrịọ GET maka URL ahụ /table, nke ga-ebipụta tebụl oge nke 2 na ihuenyo.

Ugbu a, ka anyị hụ otu koodu ahụ, na-akọwapụta nọmba nke anyị chọrọ tebụl ịba ụba:

Route::get('/table/{number}', function ($number) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
});

N'ime koodu 'number' n'etiti ihe nkwado ahụ na-anọchite anya oke, ya bụ nọmba nke a ga-agbakọ tebụl ịba ụba maka ya. Mgbe ọ bụla akọwapụtara URL nke ụdị ahụ /table/n, mgbe ahụ, a ga-ebipụta tebụl nọmba n.

Enwekwara ụzọ isi jikọta atụmatụ abụọ ahụ n'otu ụzọ. Laravel na-enye atụmatụ parampat nhọrọ nke na-enye gị ohere itinye akara nhọrọ site na iji akara ajụjụ '?' mgbe oke nhọrọ na uru mbụdefinite. Ka anyị hụ ihe atụ:

Route::get('/table/{number?}', function ($number = 2) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
});

N'ime koodu dị n'elu, anyị mepụtara oke ụzọ anyị, na-eme nọmba nhọrọ, yabụ ọ bụrụ na onye ọrụ na-aga '/table` Mgbe ahụ, ọ ga-ewepụta tebụl nke 2 na ndabaradefinite na ọ bụrụ na onye ọrụ na-aga '/table/{number}Mgbe ahụ nọmba tebụl 'number' a ga-emepụta.

Okwu oge niile dị ka ihe mgbochi maka parampat ụzọ

N'ihe atụ gara aga, anyị mepụtara ụzọ maka ịmepụta tebụl ịba ụba, ma olee otu anyị ga-esi hụ na paramita nke ụzọ ahụ bụ nọmba n'ezie, iji zere njehie mgbe ị na-emepụta tebụl ịba ụba?

Na Laravel, ị nwere ike defikpachie mmachi na oke ụzọ site na iji usoro `where` n'ụzọ ihe atụ. Ihe 'where` na-ewere aha paramita na okwu oge niile maka oke ahụ.

Akwụkwọ akụkọ ọhụrụ
Agbagharala akụkọ kacha mkpa maka ime ọhụrụ. Debanye aha iji nweta ha site na email.

Ugbu a, ka anyị hụ ọmụmaatụ nke mmachi maka oke anyị{numero}`iji jide n'aka na ọ bụ naanị ọnụọgụ ka agafere na ọrụ ahụ.

Route:: get ( '/table/{numero?}' , funzione ( $numero = 2 ) {    
   for( $i = 1 ; $i < = 10 ; $i + + ) {   
       echo "$i * $numero = " . $i * $numero . "<br>" ; 
   }   
} )->where( 'numero' , '[0-9]+' ) ;

Na koodu dị n'elu, anyị na-eji okwu mgbe niile maka nọmba ụzọ. Ugbu a, ọ bụrụ na onye ọrụ na-agbalị ịga /tebulu/ọ dịghị ga-egosipụta ewepu NotFoundHttpException.

Laravel Routing nwere ọrụ njikwa

Na Laravel, ị nwere ike definweta usoro njikwa maka ụzọ. Usoro njikwa na-arụ ọrụ niile definite oge ọ bụla onye ọrụ rutere n'ụzọ ahụ.
Na koodu na-esonụ anyị na-ekenye usoro njikwa 'functionname' na ụzọ:

Route:: get ( '/home' , 'YourController@functionname' ) ;

Koodu na-amalite na `Route::` ya mere defina-akwado usoro ihe omume ahụ. N'ikpeazụ, defiMechaa ụzọ gị na onye njikwa yana usoro ahụ site na ịgbakwunye akara @ tupu aha usoro ahụ.

Nye ụzọ aha

Na Laravel, ị nwere ike definish a aha maka ụzọ gị. Aha a na-abakarị uru. Dịka ọmụmaatụ, ọ bụrụ na ịchọrọ ibugharị onye ọrụ site n'otu ebe gaa na nke ọzọ, ịgaghị eme ya definweta URL redirect zuru ezu. Ị nwere ike ịnye aha ya naanị. Ị nwere ike defijiri usoro ` ihichapụ aha ụzọname` n'ụzọ ihe atụ.

Route::get('/table/{number?}', function ($number = 2) {
   for($i =1; $i <= 10 ; $i++){
       echo "$i * $number = ". $i* $number ."<br>";
   }   
})->where('number', '[0-9]+')->name(‘table’);

Ugbu a, enwere m ike megharịa url maka ụzọ a, site na koodu a:

$url = route('table');

N'otu aka ahụ, maka ịtụgharị gaa na URL a, syntax ziri ezi ga-abụ:

return redirect()->route('table');

Route Groups

I Route Groups, otu ụzọ n'ụzọ nkịtị, bụ ihe dị mkpa na Laravel, nke na-enye gị ohere ịmekọrịta ụzọ. Otu ụzọ bara uru mgbe ịchọrọ itinye njirimara na ụzọ niile agbakọtara. Ọ bụrụ na ị na-eji otu ụzọ, ị gaghị etinye njirimara ndị ahụ n'otu n'otu na ụzọ ọ bụla; nke a na-ezere mbiputegharị. Ọ na-enye gị ohere ịkekọrịta àgwà dịka middleware o namespaces, enweghị defimechaa njirimara ndị a n'ụzọ nke ọ bụla. Enwere ike ịfefe njirimara ndị a n'usoro n'usoro dị ka nke mbụ na usoro ahụ Route::group.

Syntax nke Otu Ụzọ Ụzọ

Route::group([], callback);  

nduru [ ]: bụ n'usoro gafere n'usoro otu dị ka nke mbụ paramita.

Ọmụmaatụ nke Route Group nel webụ.php

Route::group([], function()  
{  
   Route::get('/first' , function()  
   {  
      echo "first way route" ;   
   });  
   Route::get('/second' , function()  
   {  
      echo "second way route" ;   
   });  
   Route::get('/third' , function()  
   {  
      echo "third way route" ;   
   });  
});  

N'ime koodu, defika anyị chọta usoro otu(), nke nwere paramita abụọ, ya bụ array e closure. N'ime closure, anyị nwere ike defimechaa ole route anyị chọrọ. Na koodu dị n'elu, anyị nwere defimechaa atọ route.

Ọ bụrụ na site na ihe nchọgharị anyị na-enweta URL ahụ localhost/myproject/first onye nke mbụ na-etinye aka route pịnye na ihe nchọgharị first way route.

Site na URL localhost/myproject/second emesia nke-abua bia route pịnye na ihe nchọgharị second way route.

Mgbe na URL localhost/myproject/third emesia nke-atọ bia route pịnye na ihe nchọgharị third way route.

Prefixes nke Route Groups

Prefixes nke route a na-eji ha eme ihe mgbe anyị chọrọ ịnye nhazi URL nke ọtụtụ route.

Anyị nwere ike ezipụta prefix maka ụzọ niile definites n'ime otu na-eji prefix array option in Route Groups.

Ọmụmaatụ nke web.php

Route::group(['prefix' => 'movie'], function()  
{  
   Route::get('/godfather',function()  
   {  
     echo "Godfather casting";  
   });  
   Route::get('/pulpfiction',function()  
   {  
     echo "Pulp Fiction casting";  
   });  
   Route::get('/forrestgump',function()  
   {  
     echo "Forrest Gump casting";  
   });  
});  

Koodu ahụ nwere ụzọ atọ enwere ike ịnweta site na URL ndị a:

/movie/godfather  --->   Godfather casting

/movie/pulpfiction  --->   Pulp Fiction casting

/movie/forrestgump  --->   Forrest Gump casting

Ihe etiti

Anyị nwekwara ike ikenye middleware na ụzọ niile n'ime otu. The middleware ga-abụ defiemechara tupu ịmepụta otu. Iji hụ otu esi eme nke a, gụọ akụkọ anyị Laravel middleware ka o si arụ ọrụ.

Ihe Nlereanya:

Route::middleware(['age'])->group( function()  
{  
  
   Route::get('/godfather',function()  
   {  
     echo "Godfather casting";  
   });  
   Route::get('/pulpfiction',function()  
   {  
     echo "Pulp Fiction casting";  
   });  
   Route::get('/forrestgump',function()  
   {  
     echo "Forrest Gump casting";  
   });  
  
});  

Mkpọghe aha ụzọ

Usoro name na-eji prefix ọ bụla aha nke route ya na eriri a kapịrị ọnụ. Na usoro name, anyị kwesịrị ịkọwa eriri ahụ nwere agwa n'azụ na nganiihu.

atụ web.php

Route::name('movie.')->group(function()  
{  
   Route::get('users', function()  
   {  
      return "movie.films";  
   })->name('films');  
});  

Ercole Palmeri

Akwụkwọ akụkọ ọhụrụ
Agbagharala akụkọ kacha mkpa maka ime ọhụrụ. Debanye aha iji nweta ha site na email.

Ihe odide ndị a

Veeam nwere nkwado zuru oke maka ransomware, site na nchedo ruo nzaghachi na mgbake

Coveware nke Veeam ga-aga n'ihu na-enye ọrụ nzaghachi ihe omume cyber. Coveware ga-enye forensics na ike mmezi…

23 April 2024

Mgbanwe Green na Dijitalụ: Otu amụma amụma si agbanwe ụlọ ọrụ mmanụ & gas

Ndozi amụma na-agbanwe mpaghara mmanụ & gas, na-enwe usoro ọhụrụ na ngwa ngwa maka njikwa ihe ọkụkụ.…

22 April 2024

Onye na-ahụ maka mgbochi ntụkwasị obi UK na-ewelite mkpu BigTech na GenAI

UK CMA enyela ịdọ aka ná ntị gbasara omume Big Tech na ahịa ọgụgụ isi. Ebe ahụ…

18 April 2024

Casa Green: mgbanwe ike maka ọdịnihu na-adigide na Italy

Iwu “Case Green”, nke European Union chepụtara iji kwalite nrụpụta ike nke ụlọ, ejirila…

18 April 2024