我有一個奇怪的問題,我不能爲我的生活弄清楚。首先,我從頭開發了一個PHP MVC框架。我遇到的問題是在退出()調用後,我正在執行頭部重定向。PHP MVC +路由器和重定向問題
這裏是路由選擇過程的高層視圖:
- REQUEST_URI被剝離開,並且所請求的控制器,方法和任何參數都設置爲變量要在腳本以後使用。
- router.php檢查以確定請求的控制器是否實際存在,如果不是,則返回false,但如果一切都檢出,則返回true
- 如果它返回true,它將執行請求的控制器,方法和任何參數。
- 如果返回false,則路由器將發送重定向到自定義404頁面。這使用PHP的header()函數,並且在標題(「Location:*」)後面有一個exit()。
第4步是問題發生的地方。被請求的控制器存在,因此它被執行並且所請求的視圖存在,因此它正確地加載所有內容,但是它會執行重定向,即使成功加載視圖後調用了exit()。
是否有任何理由爲什麼路由器會繼續並激發重定向?
首先請張貼一些代碼,我們不是那麼強大的猜測一切。 – 2010-09-13 13:15:44
@TomaszKowalczyk確實。但是,你是否可以變得強大,並獲得300點幫助解決我的問題? http://stackoverflow.com/questions/42172228/is-this-how-an-mvc-router-class-typically-works – 2017-02-15 03:46:57
@Lark這個框架怎麼樣?有什麼可以幫助我嗎? http://stackoverflow.com/questions/42172228/is-this-how-an-mvc-router-class-typically-works – 2017-02-15 03:47:53