创建简单路由及控制器
<h2>创建一个控制器文件,无方法</h2>
<pre><code class="language-bash">php artisan make:controller ArticleController
# 生成文件 app/Http/Controllers/ArticleController.php</code></pre>
<ul>
<li>ArticleController.php内容</li>
</ul>
<pre><code class="language-php"><?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class ArticleController extends Controller
{
//
}</code></pre>
<h2>创建一个控制器文件,有方法</h2>
<pre><code class="language-bash">php artisan make:controller GoodsController --resource
# 生成文件 app/Http/Controllers/GoodsController.php</code></pre>
<ul>
<li>GoodsController.php内容</li>
</ul>
<pre><code class="language-php"><?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class GoodsController extends Controller
{
public function index() {}
public function create() {}
public function store() {}
public function show() {}
public function edit() {}
public function update() {}
public function destroy() {}
} </code></pre>
<h2>让方法可以访问</h2>
<ul>
<li>app/Http/Controllers/GoodsController.php</li>
</ul>
<pre><code class="language-php"><?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class GoodsController extends Controller
{
public function index()
{
echo __METHOD__;
}
public function create()
{
echo __METHOD__;
}
} </code></pre>
<ul>
<li>routes/web.php</li>
</ul>
<pre><code class="language-php">// laravel8 路由访问方法
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\GoodsController;
// 浏览器访问地址: http://lblog.com/goods/index
Route::get('/goods/index', [GoodsController::class, 'index']);
// 浏览器访问地址: http://lblog.com/goods/create
Route::get('/goods/create', [GoodsController::class, 'create']);</code></pre>
<h5>兼容 laravel8 之前路由写法</h5>
<ul>
<li>app/Providers/RouteServiceProvider.php</li>
</ul>
<pre><code class="language-php">protected $namespace = 'App\\Http\\Controllers'; // 打开此行代码注释</code></pre>
<ul>
<li>routes/web.php 文件,支持aravel8 之前路由写法</li>
</ul>
<pre><code class="language-php">// 浏览器访问地址: http://lblog.com/goods/index
Route::get('goods/index', 'GoodsController@index');
// 浏览器访问地址: http://lblog.com/goods/create
Route::get('goods/create', 'GoodsController@create');</code></pre>