Php 从$\u GET中删除/隐藏部分的更好方法,但仍能捕获全部价值

Php 从$\u GET中删除/隐藏部分的更好方法,但仍能捕获全部价值,php,get,flat-file,Php,Get,Flat File,我在做一个flatfile博客风格的脚本项目,文本文件名的布局如下: 05--im-a-title-and-may-c0ntain-lett3r5-and-numb3rs--14-12-2014 我使用explode()--将索引列表分成3部分 $id $title $date 链接到单个页面的$title 目前的单页代码为: $search = $dir . "*" . clean($_GET['title']) . "*" . '.txt'; $files = glob($search

我在做一个flatfile博客风格的脚本项目,文本文件名的布局如下:

05--im-a-title-and-may-c0ntain-lett3r5-and-numb3rs--14-12-2014

我使用
explode()
--将索引列表分成3部分

  • $id
  • $title
  • $date
链接到单个页面的
$title

目前的单页代码为:

$search = $dir . "*" . clean($_GET['title']) . "*" . '.txt';

$files = glob($search);

$getfile  = $files[0];

echo file_get_contents($getfile);
如您所见,我使用的是
globe()
并且它的通配符匹配
$\u GET
文件名,以获取文件内容,并从url中删除/隐藏id和日期部分,这很好,但一旦文件开始堆积,它也将开始变得非常服务器密集,必须搜索许多文件,以便在它开始查找新文件之前修复此问题从
$中删除/隐藏零件的更好方法是在仍能找到正确文件的情况下获取

更新: 这样做的目的是使单页url更干净
domain.com/i-am-a-title
,而不是
domain.com/05--im-a-title--14-12-2014

更新2:
RewriteRule^([a-zA-Z0-9_-]+)$single.php?title=$1[L]

为什么要搜索文件?直接获取准确的文件。

这是因为url更干净
/i-am-a-title
,而不是
/05--im-a-title--14-12-2014
,这是我唯一需要按需要工作的选项。我认为你应该更改为单页url。。比如:@AnnaRiekicYou的意思是
$getfile=$\u get['title';回显文件\u获取\u内容($getfile)然后将显示不是我想要的全文文件名。否。发送所有需要的数据,如single.php?id=5&date=14-12-2014&title=im-a-title,如果您想使用htaccess重写@annariekict,这也不是我想要的,我只想
domain.com/I-am-a-title
我已经使用htaccess将添加到op中