apache-php可以发出请求执行代码时先执行另外一段代码么
时间:2021-07-01 10:21:17
帮助过:17人阅读
就是像java的Filter一样
在执行真正的代码前把请求拦截下来然后执行处理程序
处理程序执行完后才执行请求的路径
回复内容:
就是像java的Filter一样
在执行真正的代码前把请求拦截下来然后执行处理程序
处理程序执行完后才执行请求的路径
有两种方法可以做到:
- 使用auto_prepend_file,在php.ini中设置,例如:auto_prepend_file = "/home/linqq/libs/filter.php",当浏览器请求index.php, login.php等页面的时候,就会自动在处理index.php, login.php之前加载filter.php,这个功能出来很久了,一直养在深宫人未识,文档:http://www.php.com/manual/en/ini.core... http://qing.weibo.com/1657315521/62c8...
- 使用类似Java里面Dispatcher Servlet的bootstrap文件,所有HTTP请求都指向此文件,再由此文件来调度,PHP里主流的MVC框架都是这样的自己写个简单的MVC也可,我2006年就是这样入手写框架的,第一个版本的框架源码只有7K
具体哪种方法好,就要靠女施主结合自己的项目情况实战一下再说了
单一入口可以实现,百度搜索即可了解,很多框架都是这么做的,别的还有什么方法就不清楚了
你说的请求是HTTP请求吗?
那么这个功能就是php框架的基本功能,拦截请求,做一些事
http://segmentfault.com/search?q=php+... 在SF搜索“php 框架”可以找到很多数据
另外Symfony2中文站的工程师驻守在SF,可以考虑Symfony2 http://symfony.cn/ 作为你的开发框架