Java Servlet 过滤器的 PHP 等价物是什么?
-
19-09-2019 - |
题
在 Java 方面,我们有一个处理身份验证的 servlet 过滤器。我们不必更改所有其他 servlet 或 JSP 来向页面添加身份验证,除非页面需要自定义内容。
我们怎样才能在 PHP 上实现同样的效果呢?我们不使用任何 PHP 框架。
解决方案
没有直接等价物。最好的选择是在顶部包含一个通用文件,并根据需要在其顶部执行此类逻辑。所以:
require 'common.php';
和:
if (!isset($_SESSION['userid'])) {
// authentication stuff
}
如果您想在最后做某事,您有以下几种选择:
- 使用输出缓冲区处理程序
ob_start()
;或者 - 注册关闭回调
register_shutdown_function()
.
所以:
ob_start('my_callback');
function my_callback($str) {
// do something
return $str;
}
或者
register_shutdown_function(my_callback);
function my_callback() {
// do something
}
其他提示
如果我明白你的问题correctly.This可以在架构变化..例如..创建一个包含文件,检查用户是否通过会话验证,如果不是发送到登录页面。我认为有超过2个脚本任何网站将利用某种形式的包含文件和u可以把这个代码在该文件中。你甚至可以有一个包含这需要有一个有效的用户会话,并匹配以请求的URI ..几种方法去它的网页的名称的数组..ü只需要选择其中最适合U中的一个。
不隶属于 StackOverflow