【发布时间】:2015-02-01 16:14:02
【问题描述】:
我正在处理一个平面文件博客风格的脚本项目,文本文件名的布局如下:
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(),它是通配符来匹配$_GET 到文件名以获取文件内容并从url 中删除/隐藏id 和日期部分,这工作正常但是一旦文件开始堆积它也将开始变得非常服务器密集,不得不搜索许多文件,因此想要在它开始之前解决这个问题,所以寻找一种更好的方法来删除/隐藏来自 $_GET 的部分,但仍然找到正确的文件。
更新:
这样做的目的是使单页 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]
【问题讨论】: