我正处于开发一个网站的早期阶段,该网站将为每个数据库条目提供一个网页。我的问题是,(1(一个带有$_GET的php页面返回特定的数据库项目,或者(2(每个项目的单独网页,利弊是什么?
例如,示例1是这样的-
- mysite.com/alphabet.php?letter=a
- mysite.com/alphabet.php?字母=b
- mysite.com/alphabet.php?字母=c
示例2是-
- mysite.com/alphabet/letter_a.php
- mysite.com/alphabet/litter_b.php
- mysite.com/alphabet/litter_c.php
我使用了示例1,这是我唯一一个大量使用MySQL构建的网站。考虑到显示这些内容的代码对每个条目的作用都是相同的,我认为示例1将是最佳实践,但当我访问类似的网站时,他们似乎更喜欢示例2。
我试着在这个网站和网络上搜索这个答案,但这似乎是一个尴尬的搜索短语,因为我空手而归。任何见解都将不胜感激。
事实上,这两种用法都是过去几年的老派用法。主要使用以下格式:
- mysite.com/alphabet/letter/a
- mysite.com/alphabet/letter/b
- mysite.com/alphabet/letter/c
这种格式被称为friendly url
或pretty url
,在大多数情况下,它指向具有一个参数a
、b
或c
的Alphabet
控制器的letter
动作,其将类似于:
Class AlphabetController {
public function letter($letter) {
$DbModel->getListStartingWith($letter);
}
}