Cara menggunakan rangka kerja Lumen dalam PHP

WBOY
Lepaskan: 2023-06-27 20:00:01
asal
1944 orang telah melayarinya

Cara menggunakan rangka kerja Lumen dalam PHP

Lumen ialah versi ringkas rangka kerja Laravel, yang memfokuskan pada membina perkhidmatan mikro ringan dan aplikasi API dengan cepat. Lumen ialah rangka kerja sumber terbuka yang dicipta dan diselenggara oleh Taylor Otwell. Ia terkenal dengan kelajuan dan prestasi yang menakjubkan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangka kerja Lumen dalam PHP.

1. Pasang dan konfigurasikan rangka kerja Lumen

Mula-mula, anda perlu memasang alat komposer dalam sistem anda. Komposer ialah alat pengurusan pergantungan untuk PHP dan digunakan untuk memasang dan mengurus rangka kerja Lumen. Anda boleh memasang komposer dengan melawati URL berikut: https://getcomposer.org/download/.

Setelah alat komposer dipasang, anda boleh memasang Lumen dengan mengikut arahan:

composer create-project --prefer-dist laravel/lumen yourprojectname
Salin selepas log masuk

Selepas menjalankan arahan di atas, komposer akan Buat direktori yang mengandungi projek Lumen yang dipasang.

2. Penghalaan

Dalam rangka kerja Lumen, penghalaan ialah pemetaan yang menghalakan permintaan kepada pengawalnya yang sepadan. Fail definisi laluan terletak dalam routes/web.php dan boleh diakses melalui laluan $app->get('/', function () use ($app) {return " Hello World"; }); untuk menentukan laluan. Dalam contoh ini, kami mentakrifkan laluan akar supaya apabila seseorang mengakses laluan ini, "Hello, World" akan dikembalikan. routes/web.php,可以通过路由$app->get('/', function () use ($app) {return "Hello World";});的方式来定义路由。在此例子中,我们定义了根路径,当有人访问这个路由时,“Hello, World”将会返回。

3.控制器

在Lumen框架中,控制器是包含应用程序应该执行的代码的类。 控制器应该保存在app/Http/Controllers目录中。下面是如何定义一个简单的控制器:

namespace AppHttpControllers;

use AppUser;
use IlluminateHttpRequest;

class UserController extends Controller
{
    public function show($id)
    {
        return view('user.profile', ['user' => User::findOrFail($id)]);
    }
}
Salin selepas log masuk

4.中间件

Lumen中可以使用一个中间件来操作请求,例如添加日志、验证输入或者授权等。 Lumen中间件的定义可以在app/Http/Middleware目录中创建一个新文件。Lumen中间件包含两个方法:handle($request, Closure $next)__construct()handle方法拦截一个请求并进行操作,__construct方法可以接受任何依赖注入。以下是如何定义一个简单的中间件:

namespace AppHttpMiddleware;

use Closure;

class ExampleMiddleware
{
    public function handle($request, Closure $next)
    {
        // Do something before the request is handled by another middleware
        $response = $next($request);
        // Do something after the request is handled by another middleware     
        return $response;
    }
}
Salin selepas log masuk

5.模型

模型是Lumen框架中数据交互的核心。 在Lumen中,您可以使用默认的Eloquent ORM或者其他流行的ORM库来处理模型。以下是如何定义一个简单的模型:

namespace App;

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    public $fillable = ['name', 'email', 'password'];
}
Salin selepas log masuk

6.视图

在Lumen框架中,您可以使用Blade模板引擎来生成视图。

Blade模板引擎是Laravel框架中默认的模板引擎,也可以用于Lumen框架。 这里是一个简单的视图模板示例:

<!-- Stored in resources/views/greeting.blade.php -->

<html>
    <body>
        <h1>Hello, {{ $name }}</h1>
    </body>
</html>
Salin selepas log masuk

7.配置

Lumen框架的配置文件位于bootstrap/app.php

3. Pengawal

Dalam rangka kerja Lumen, pengawal ialah kelas yang mengandungi kod yang harus dilaksanakan oleh aplikasi. Pengawal hendaklah disimpan dalam direktori app/Http/Controllers. Begini cara untuk menentukan pengawal mudah:

$app->configure('app');
$app->configure('debug');
Salin selepas log masuk

4 Middleware

Anda boleh menggunakan perisian tengah dalam Lumen untuk mengendalikan permintaan, seperti menambah log, mengesahkan input atau memberi kebenaran, dsb. Takrif perisian tengah Lumen boleh mencipta fail baharu dalam direktori app/Http/Middleware. Perisian tengah Lumen mengandungi dua kaedah: handle($request, Closure $next) dan __construct(). Kaedah handle memintas permintaan dan menjalankan operasi Kaedah __construct boleh menerima sebarang suntikan pergantungan. Begini cara untuk mentakrifkan perisian tengah yang mudah:

class ExampleTest extends TestCase
{
    public function testBasicExample()
    {
        $this->visit('/')
             ->see('Hello, World');
    }
}
Salin selepas log masuk
5. Model

Model ialah teras interaksi data dalam rangka kerja Lumen. Dalam Lumen, anda boleh menggunakan ORM Eloquent lalai atau perpustakaan ORM popular lain untuk memproses model. Begini cara untuk mentakrifkan model mudah: 🎜rrreee🎜 6. Pandangan 🎜🎜Dalam rangka kerja Lumen, anda boleh menggunakan enjin templat Blade untuk menjana pandangan. 🎜🎜Enjin templat bilah ialah enjin templat lalai dalam rangka kerja Laravel dan juga boleh digunakan dalam rangka kerja Lumen. Berikut ialah contoh templat paparan ringkas: 🎜rrreee🎜7 Konfigurasi🎜🎜Fail konfigurasi rangka kerja Lumen terletak dalam bootstrap/app.php. Dalam fail ini, anda boleh menukar pelbagai konfigurasi aplikasi seperti mod nyahpepijat, konfigurasi log, dsb. 🎜🎜Sebagai contoh, anda boleh mengkonfigurasi Lumen untuk dijalankan dalam mod nyahpepijat seperti berikut: 🎜rrreee 🎜 8. Pengujian 🎜🎜Rangka kerja Lumen menyediakan banyak alatan untuk menguji aplikasi. Gunakan kelas PHPUnit untuk menulis ujian dalam ujian unit Lumen. Ujian unit boleh mengesan ralat dan isu semasa kod aplikasi dibina. Berikut ialah contoh ujian unit: 🎜rrreee🎜Kesimpulan🎜🎜Menggunakan beberapa langkah mudah dalam rangka kerja Lumen boleh membangunkan perkhidmatan mikro dan aplikasi API dengan cepat dengan prestasi tinggi, dan ia juga sangat mudah apabila membina aplikasi ringan. 🎜

Atas ialah kandungan terperinci Cara menggunakan rangka kerja Lumen dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan