我想了解如何在php网站上使用模板系统和永久链接:D!。。
,让我多描述一下我自己
1.目前我有20个文件,每个文件都有自己的php逻辑(index.php、wizard.php、search.php等)ALL使用相同的类和includes。(install.php包括我项目中所有类所需的所有内容,abd u require_one(install.php)包含在所有文件中)
我想把我的网站改造成。
Analyze URL requested ---> IDENTIFY requested page ---> GET TEMPLATE for THIS PAGE -->MODIFY header(meta) and footer(javascript) ---> add logic ---> display page :D.
有人能让我走上正确的学习轨道吗!。因为我已经完全用oop对我的网站进行了编码,并从MYSQL(简单的小型CMS)动态加载了所有内容,但我不知道如何在不重复自己的情况下将模板和php连接到索引中,并为我的网页中的每个页面创建不同的文件!(每个文件当然做不同的工作,比如文件用户。php做登录和注册以及用户档案等)
希望我的英语不是太差,你能理解我的问题:D!
到目前为止,我目前的做法是:
Mysql表:page_tbl列:pagename、LogicFile、templateFile、MetaTag。
index.php?页面名称
将检查是否尚未缓存或未列出以进行更改它将:
Mysql:SELECT * WHERE pagename='$_GET['page']'
loginfiles=cars.php,search.php(将被分解为,并包含在内)模板文件=也将根据MetaTag进行分解和修改。元标记:序列化了具有['name']=['value']的assoc数组;
然后我开始缓冲输出,用新的描述和关键字替换模板(自动生成)包括逻辑文件include footer.php(包括脚本)
我是接近正确的溃败还是仍然很远?或者我是不是失去了跟踪并过度杀死了
如果您不确定是要编写自己的,还是使用现有的。
- 这可能是一次非常有意义的经历,但写自己的东西非常耗时
- 如果你手头有一项任务需要解决,那就使用现有的任务
也就是说,有很多模板系统,smarty是寿命最长的一个。您可以在phpbuilder上找到关于5个流行的简短讨论。
您还可以考虑整个框架。它们不仅仅是一个模板系统,其中包括数据库、ajax助手等Zend、CakePHP和Codeigniter是流行的。您可以在phpframework中找到它们的比较。
最好的方法是走这条路线:
- 解析请求数据
- 确定将使用的控制器
- 在控制器中,选择布局和模板[布局"包含"模板,它包含所有页面通用的内容,模板具有特定于请求的内容]
- 在控制器中也从数据库中获取数据[MMVP方式]
- 将数据分配给数组并将其传递给布局,它将进一步将数据传递给模板
- 在布局和模板中,使用该数组和构造视图中的数据
- 将所有内容传递到浏览器
这就是框架的工作方式,也没那么糟糕