Menulis Semula Pembolehubah GET dengan .htaccess
Banyak aplikasi web menggunakan struktur URL yang merangkumi kandungan dinamik, seperti contoh yang diberikan: indeks. php?page=controller. Untuk meningkatkan pengalaman pengguna dan mengekalkan struktur URL yang lebih bersih, adalah wajar untuk menulis semula URL ini untuk dipaparkan dalam format yang lebih mesra pengguna. Ini boleh dicapai menggunakan peraturan .htaccess.
Peraturan .htaccess yang disediakan secara berkesan menulis semula URL dalam bentuk http://localhost/index.php?page=controller ke http://localhost/controller/. Walau bagaimanapun, keperluan adalah untuk turut menyokong parameter GET, menghasilkan URL seperti http://localhost/controller/param/value/param/value.
Untuk mencapai ini, RewriteRule berikut boleh ditambah pada Fail .htaccess:
RewriteRule ^(.*)$ index.php?params= [NC, QSA]
Peraturan ini menangkap keseluruhan URL, termasuk sebarang parameter dan memperuntukkan data yang ditangkap kepada pembolehubah GET params. Akibatnya, URL http://localhost/controller/param/value/param/value akan ditulis semula ke index.php?params=param/value/param/value.
Dalam skrip PHP, params Pembolehubah GET boleh diletupkan untuk mengekstrak parameter individu dan nilainya. Contohnya:
<?php $params = explode("/", $_GET['params']); for($i = 0; $i < count($params); $i+=2) { echo $params[$i] ." has value: ". $params[$i+1] ."<br />"; } ?>
Dengan pengubahsuaian ini, peraturan .htaccess akan berjaya menulis semula URL dengan parameter GET, membolehkan skrip PHP mengakses parameter ini untuk pemprosesan selanjutnya dan logik pengawal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menulis Semula URL dengan Parameter GET Menggunakan .htaccess?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!