laravel

Fasad Laravel

Fasad Laravel
Wadah layanan Laravel memungkinkan pengguna untuk memulai kelas dengan alias. Cara mengakses wadah layanan Laravel disebut fasad. Laravel berisi banyak fasad bawaan untuk mengakses berbagai fitur Laravel. Fasad digunakan di Laravel untuk membuat aplikasi lebih dapat diuji, fleksibel, dan lebih sederhana. Semua fasad built-in didefinisikan dalam namespace Illuminate\Support\Facades. Tutorial ini menunjukkan cara membuat dan menggunakan fasad bawaan Laravel.

Penggunaan Fasad Built-in

Anda harus membuat pengontrol untuk menggunakan fasad bawaan apa pun. Jalankan perintah berikut untuk membuat pengontrol bernama TestController.

Ubah TestController dengan kode berikut untuk menunjukkan penggunaan fasad bawaan DB. Fasad ini digunakan untuk melakukan semua jenis operasi database. Dalam kode berikut, semua catatan tabel pengguna akan diambil dengan menggunakan: DB tatapan. Output akan dicetak sebagai array setelah menjalankan kode.

TestController.php:

namespace App\Http\Controllers;
gunakan Illuminate\Http\Request;
menggunakan DB;
kelas TestController memperluas Controller

indeks fungsi publik()

$pengguna = DB::select('pilih * dari pengguna');
echo print_r($pengguna);

Tambahkan rute berikut di jaring.php mengajukan. Ini akan memanggil indeks() metode TestController untuk rute '/uji.'

Rute::get('/test', '[email protected]');

Jalankan URL berikut dari browser.

http://localhost/laravelpro/public/test

Buat Fasad

Ikuti langkah-langkah di bawah ini untuk membuat fasad khusus di Laravel.

1. Buat folder bernama Daerah dibawah aplikasi folder dan buat file bernama Daerah.php di bawah folder ini dengan kode berikut. Empat metode didefinisikan di kelas untuk menghitung luas lingkaran, persegi, persegi panjang, dan segitiga. Lingkaran() akan mengambil nilai radius sebagai parameter untuk menghitung area. Kotak() akan mengambil panjang setiap sisi bujur sangkar sebagai parameter untuk menghitung luasnya. Empat persegi panjang() akan mengambil tinggi dan lebar sebagai parameter untuk menghitung luas. Segi tiga() akan mengambil nilai alas dan tinggi segitiga untuk menghitung luasnya.

aplikasi namespace\Area;
Area kelas

fungsi publik Lingkaran($radius)

kembali "Luas lingkaran adalah".(3.14*$jari-jari*$jari-jari);

fungsi publik Kotak($len)

kembali "Luas persegi adalah ".($len*$len);

fungsi publik Rectangle($height,$width)

kembali "Luas persegi panjang adalah ".($tinggi*$lebar);

fungsi publik Segitiga($dasar,$tinggi)

kembali "Luas segitiga adalah ".(0.5*$dasar*$tinggi);

2. Tambahkan rute berikut untuk mengakses metode dari Daerah kelas. Di sini, ketika pengguna mengetik 'daerah' setelah URL dasar, objek dari Daerah kelas akan didefinisikan, dan empat metode kelas ini dipanggil dengan nilai parameter. Tetapi, jika Anda ingin mengakses metode kelas secara langsung seperti fasad tanpa membuat objek, maka kesalahan akan dihasilkan. Langkah selanjutnya menunjukkan cara membuat fasad untuk mengakses metode kelas ini secara langsung.

gunakan Aplikasi\Area\Area;
Rute::get('/area', function()
$luas = luas baru();
echo $area->Lingkaran(3)."
";
echo $area->Persegi(4)."
";
echo $area->Rectangle(100.200)."
";
echo $area->Segitiga(10,5)."
";
);

3. Jalankan URL berikut dari browser untuk memeriksa apakah rute berfungsi.

http://localhost/laravelpro/public/area

Output berikut akan muncul jika rute berfungsi dengan baik.

4. Buat folder bernama Fasad di bawah aplikasi folder dan buat file bernama Hitung Luas.php dengan kode berikut. Di sini, getFacadeAccessor() metode didefinisikan di dalam Hitung Luas untuk mengembalikan string cal_area digunakan untuk mengikat Daerah kelas.

namespace App\Facades;
kelas HitungArea meluas \Illuminate\Support\Facades\Facade

fungsi statis publik getFacadeAccessor()

kembali 'cal_area';

5. Buka jaring.php dan tambahkan kode berikut untuk mengikat Daerah kelas dengan Hitung Luas kelas fasad dengan tali cal_area.

app()->bind('cal_area', function()
kembalikan \App\Area\Area baru;
);

6. Buka aplikasi.php file di bawah konfigurasi map. Buka bagian array alias dan tambahkan baris berikut di akhir array. Ini mendefinisikan Hitung Luas sebagai indeks array dan nilainya adalah kelas fasad yang didefinisikan di bawah /aplikasi/tatapan map. Sekarang, Anda dapat mengakses metode dari Daerah kelas sebagai fasad tanpa membuat objek apa pun.

'CalculateArea' => App\Facades\CalculateArea::class,

7. Tambahkan rute berikut di jaring.php file untuk mengakses metode dari Daerah kelas menggunakan Hitung Luas tatapan.

Rute::get('/calarea', function()
echo HitungArea::Lingkaran(3)."
";
echo HitungArea::Persegi(4)."
";
echo HitungArea::Persegi Panjang(100.200)."
";
echo HitungArea::Segitiga(10,5)."
";
);

8. Jalankan URL berikut dari browser untuk memeriksa apakah rute berfungsi.

http://localhost/laravelpro/public/calarea

Output berikut akan muncul jika rute berfungsi dengan baik.

9. Anda juga dapat menggunakan Hitung Luas fasad seperti fasad bawaan di pengontrol apa pun. Jalankan perintah berikut untuk membuat pengontrol bernama Pengontrol Fasad Dimana Hitung Luas fasad akan diterapkan.

$ php artisan make:controller FacadeController

Ubah pengontrol dengan kode berikut, di mana: Hitung Luas fasad diimpor dan indeks() metode ditambahkan di dalam pengontrol. Ketika indeks() metode disebut, empat metode dari Daerah kelas akan dipanggil, dan output yang diformat akan dicetak dengan menggunakan CSS.

namespace App\Http\Controllers;
gunakan Illuminate\Http\Request;
gunakan HitungArea;
kelas FacadeController memperluas Controller

indeks fungsi publik()

gema "

".Hitung Luas::Lingkaran(5)."

";
gema "

".Hitung Luas::Persegi(5)."

";
gema "

".Hitung Luas::Persegi Panjang(200.200)."

";
gema "

".Hitung Luas::Segitiga(15,5)."

";

10. Tambahkan rute berikut di jaring.php untuk mengakses untuk mengakses indeks() metode dari Pengontrol Fasad.

Route::get('calculateArea', '[email protected]');

11. Jalankan URL berikut dari browser untuk memeriksa apakah rute berfungsi.

http://localhost/laravelpro/public/calculateArea

Output berikut akan muncul jika rute berfungsi dengan baik.

Kesimpulan

Fitur yang dibahas dalam artikel ini dapat digunakan di berbagai tempat, seperti pengontrol atau rute Laravel, dengan menggunakan fasad. Ini membuat tugas pengembangan lebih mudah. Penggunaan fasad built-in dan yang ditentukan pengguna dijelaskan dalam tutorial ini dengan menggunakan contoh yang sesuai. Penggunaan fasad bawaan, DB, ditunjukkan dengan menggunakan pengontrol. Penggunaan fasad khusus, Hitung Luas, ditunjukkan dengan menggunakan rute dan pengontrol. Tutorial ini menjelaskan konsep penggunaan fasad untuk membantu pengembang Laravel menerapkannya dalam proyek mereka, berdasarkan persyaratan khusus mereka.

Cara Menggunakan Cheat Engine GameConqueror di Linux
Artikel ini mencakup panduan tentang menggunakan mesin cheat GameConqueror di Linux. Banyak pengguna yang bermain game di Windows sering menggunakan a...
Emulator Konsol Game Terbaik untuk Linux
Artikel ini akan mencantumkan perangkat lunak emulasi konsol game populer yang tersedia untuk Linux. Emulasi adalah lapisan kompatibilitas perangkat l...
Distro Linux Terbaik untuk Gaming pada tahun 2021
Sistem operasi Linux telah berkembang jauh dari tampilan aslinya, sederhana, berbasis server. OS ini telah sangat meningkat dalam beberapa tahun terak...