1. 程式人生 > >Laravel控制器簡單總結

Laravel控制器簡單總結

控制器一般儲存在app/controllers目錄下,所有的控制器都要繼承BaseController類。BaseController類也儲存在app\controllers下,通常用來放置公用的控制器邏輯。BaseController 類繼承自框架的Controller 類。

在終端新建控制器和指定操作:


 php artisan controller:make PostController --only='index,show'

基礎控制器

  • 基礎控制器例子

<?php
class UserController extends BaseController {
public function showUser($username) { return 'My name is '.$username; } }
  • 在路由中呼叫控制器

Route::get('user/{username}', 'UserController@showuser');

RESTful控制器

  • RESTful控制器例子

class UserController extends BaseController {

    public function getIndex()
    {
        //
    }

    public
function postProfile() { // } public function anyLogin() { // } }
  • 在路由中使用 Route::controller 方法定義路由

Route::controller('users', 'UserController');

資源控制器

資源控制器讓圍繞資源構建的RESTful控制器變得更加簡單。

  • 在終端新建控制器

php artisan controller:make PhotoController
  • 資源控制器例子

<?php

class PhotoController extends \BaseController {

   /**
    * Display a listing of the resource.
    *
    * @return
Response */
public function index() { // } /** * Show the form for creating a new resource. * * @return Response */ public function create() { // } /** * Store a newly created resource in storage. * * @return Response */ public function store() { // } /** * Display the specified resource. * * @param int $id * @return Response */ public function show($id) { // } /** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { // } /** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id) { // } /** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { // } }
  • 在路由中使用 Route::resource() 方法定義路由


Route::resource('photo', 'PhotoController');