Menulis semula URL dengan GET Variables dalam .htaccess
Apabila menggunakan PHP untuk tujuan penghalaan (cth., index.php?page=controller), adalah berguna untuk mempunyai struktur URL yang lebih bersih dan mesra pengguna. .htaccess, fail konfigurasi Apache yang digunakan secara meluas, menyediakan cara yang mudah untuk menulis semula URL dan mengendalikan pembolehubah GET.
Dalam situasi yang diberikan, matlamatnya adalah untuk mempunyai URL seperti http://localhost/controller/ laluan ke index.php?page=controller dengan cara yang bersih dan ringkas. Selain itu, keperluan adalah untuk menyokong URL dengan parameter, seperti http://localhost/controller/param/value/param/value, yang sepatutnya dipetakan ke http://localhost/controller/?param=value¶m=value dengan GET pembolehubah.
Untuk mencapai matlamat ini, penyelesaian yang mudah tetapi berkesan boleh dilaksanakan menggunakan peraturan tulis semula dalam .htaccess fail:
RewriteRule ^([\w\d~%.:_\-]+)/(.+)$ index.php?page=¶ms= [NC, QSA]
Dengan peraturan ini ditetapkan, URL seperti http://localhost/controller/param/value/param/value akan ditulis semula ke index.php?page=controller¶ms=param/value/param/value. Ini menyediakan cara yang bersih dan mudah untuk mengurus parameter GET dan mengekalkan struktur URL asal.
Untuk mengakses parameter ini dalam kod PHP anda, anda boleh menggunakan $_GET['params'], yang mengandungi rentetan parameter. Anda kemudian boleh memisahkannya menggunakan pembatas (cth., /) dan mengakses nilai parameter individu.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menulis Semula URL dengan Pembolehubah GET dalam .htaccess untuk Penghalaan Bersih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!