Dalam thinkphp, penghalaan merujuk kepada pemetaan yang diberikan kepada pengendali yang sepadan mengikut URL fungsinya adalah untuk memudahkan alamat akses URL dan membuat penghuraian yang betul mengikut jenis penghalaan yang ditentukan. Ringkasnya, penghalaan ialah penghuraian laluan Menurut laluan yang dikemukakan oleh klien, permintaan dihuraikan kepada modul atau pengawal atau kaedah yang sepadan.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi thinkphp v5.1, komputer Dell G3.
Mari kita kaji mekanisme penghalaan ThinkPHP5.
Walaupun manual pembangunan lengkap TP5 bercakap tentang penghalaan dengan sangat jelas, kami masih mengkaji penghalaan TP5 dalam artikel ini Lagipun, membaca blog lebih selesa daripada membaca buku.
Pertama sekali, tanya tiga soalan:
1.
Laluan merujuk kepada pemetaan yang diberikan kepada pengendali yang sepadan berdasarkan url.
Ringkasnya, ia adalah analisis laluan Menurut laluan yang dikemukakan oleh klien, permintaan dihuraikan kepada modul/pengawal/kaedah yang sepadan.
Dokumen rasmi mentakrifkannya seperti ini=>Fungsi penghalaan adalah untuk memudahkan alamat akses URL dan membuat penghuraian yang betul berdasarkan jenis penghalaan yang ditentukan.
Penjelasan manual: Apabila kami biasanya mengakses projek ThinkPHP kami mengikut tabiat kami, url biasa hendaklah ditulis seperti ini, (contoh tempatan) http:// localhost/project name/public/index.php/nama modul/nama pengawal/nama kaedah
Selepas memasukkan rentetan URL, anda akan berasa sangat terdesak, (berbisik) = > mahu menguji antara muka kecil yang membolehkan saya menaip senarai alamat yang begitu panjang dan saya tidak dapat mengingatinya...". Pada masa ini, kita boleh menggunakan penghalaan untuk memudahkan alamatnya dan mentakrifkan beberapa peraturan sambil memendekkan alamat.
2. Mengapa menggunakan penghalaan?
Sesetengah orang mungkin berterus terang: Untuk memudahkan laluan. Sudah tentu, ini adalah salah satu sebab, tetapi sebabnya tidak begitu mudah.
Mempermudahkan laluan adalah sebab yang besar, kerana pada mulanya saya fikir laluan itu terlalu panjang dan berlari untuk menghidupkannya Tetapi kemudian dalam proses menggunakannya, saya dapati peranan Laluan Malah, ia tidak terhad kepada laluan yang dipermudahkan.
Kami boleh mendayakan penggunaan laluan secara paksa supaya semua orang hanya boleh masuk melalui laluan yang saya tetapkan. Ini mempunyai kelebihan iaitu anda boleh menulis beberapa pengawal yang anda tidak mahu pengguna untuk mengakses skrip, jika anda mendayakan penghalaan penuh untuk kegunaan paksa, pengguna tidak akan dapat mengakses skrip ini Jika tidak, jika pengguna mengakses skrip ini, dan skrip kadangkala mengubah suai pangkalan data, ia akan menjadi lebih berbahaya.
Selain itu, kita boleh menentukan sama ada entri dari laluan ini adalah operasi dapatkan atau operasi pos, supaya tiada situasi seperti sebelum ini, anda juga boleh get from get Ia boleh diakses, dan pos juga boleh diakses, yang sangat mengelirukan, sesetengah orang akan mengatakan bahawa ia bukan masalah besar jika kedua-dua get dan pos boleh diakses untuk membezakan antara kaedah ini untuk menjelmakan idea Restful API daripada.
Begitu juga, saya tidak akan bercakap tentang peraturan http dan https.
Pada ketika ini, adakah anda fikir penghalaan agak ajaib?
Penggunaan Laluan
Sebelum menggunakannya, mari kita fahami maklumat konfigurasi dahulu Ia masih projek fork saya. buka fail konfigurasi:
Ada dua perkara yang perlu diberi perhatian, pertama di dalam kotak merah pertama Secara lalai, tp menghidupkan mod routing untuk kita Dalam kotak merah kedua, tp mematikan penggunaan routing secara lalai Apakah maksudnya? Malah sekarang saya boleh mengakses dengan jayanya melalui mod alamat biasa kami, dan akses melalui penghalaan juga boleh berjaya.
Apabila saya biasanya membuat projek, saya akan menukar ini kepada benar atas sebab keselamatan, jadi mari kita lihat kesannya
Belum lagi Apabila menghidupkan penghalaan paksa:
Akses mengikut alamat biasa boleh berjaya, jadi mari hidupkan penghalaan paksa sekarang:
Alamat yang sama melaporkan ralat, dan membuang laluan tidak ditemui ralat, kerana kami tidak mentakrifkan laluan ini dalam fail penghalaan, jadi ia melemparkan ralat, Ia menunjukkan bahawa kita kini terpaksa menggunakan penghalaan.
Jadi mari kita takrifkannya sekarang, bermula dengan yang paling mudah:
Cari fail laluan
rangka kerja thinkphp]
Atas ialah kandungan terperinci apakah penghalaan thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)