在Java方面,我們有一個處理認證的servlet過濾器。除非頁面需要定製內容,否則我們不必更改所有其他servlet或JSP以向頁面添加認證。什麼是Java Servlet過濾器的PHP等價物?
我們如何才能在PHP上實現相同?我們不使用PHP上的任何框架。
在Java方面,我們有一個處理認證的servlet過濾器。除非頁面需要定製內容,否則我們不必更改所有其他servlet或JSP以向頁面添加認證。什麼是Java Servlet過濾器的PHP等價物?
我們如何才能在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
}
如果我正確理解你的問題。這可以在體系結構上有所不同..例如..創建一個包含文件,該文件檢查用戶是否通過會話進行身份驗證,如果不發送到登錄頁面。我認爲任何超過2個腳本的站點都會使用某種包含文件,並且可以將該代碼放入該文件中。你甚至可以有一個數組,其中包含需要有一個有效的用戶會話,並與請求uri相匹配的頁面的名稱..幾種方法去解決它..你只需要選擇一個適合你最。