如何使PHP类别像CMS一样

如何使PHP类别像CMS一样,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我刚开始学习PHP,我正在尝试制作一个基本的cms,问题是我不知道如何让urlmysite.com/cat1显示类别1的文章,我通常使用mysite.com?cat=cat1然后: if(isset($_GET['cat'])) { $articles=mysql_query("select * from articles where cat=".$_GET['cat']); } else { $articles=mysql_query("select * from articles")

我刚开始学习PHP,我正在尝试制作一个基本的cms,问题是我不知道如何让url
mysite.com/cat1
显示类别1的文章,我通常使用
mysite.com?cat=cat1
然后:

if(isset($_GET['cat']))
{
  $articles=mysql_query("select * from articles where cat=".$_GET['cat']);
}
else
{
  $articles=mysql_query("select * from articles");
}

但是我认为
mysite.com/cat1
会更好、更安全,而且我正在使用
$\u GET
作为页面。

mysite.com/.htaccess上创建
.htaccess
文件

.htaccess
文件的内容应为:

RewriteEngine On
RewriteRule ^cat([0-9]+)$ /cat$1.php [L]
mysite.com/file.php的内容:

<?php
if(isset($_GET['cat']))
{
  echo $_GET['cat'];
}
else
{
  echo "GET is not set";
}
?>
它也适用于mysite.com/cat123等

参考:


(请参阅“Regex Back Reference Availability”一节中的“图1”)

您必须使用.htaccessRewriteRule@DmytroDzyubak请给出一个完整的答案。使用这些url而不是仅仅获取参数并不安全。不过更好。
1