(注意不是用 header ,js 等方法做的客戶端跳轉)
復制代碼 代碼如下:
function server_transfer($dest)
{
global ...; // 把希望在新頁面中用到的本頁變量或者自定義的全局變量列在這裡
include $dest; // 運行新腳本
exit; // 退出本腳本
}
注意:
1. 如果跳轉之前輸出的任何數據都會在新頁面中顯示,除非使用 ob_start 緩沖,可以在跳轉之前清空,這樣就互不影響了.
2. 由於新頁面在一個自定義的函數作用域內運行,所以本頁面定義的變量不會影響到新頁面,這點是好處也是壞處.
3. 新頁面依然可以用 $_POST 等超全局變量訪問到本來屬於本頁面的變量,編寫代碼是需要注意.
4. 要考慮到本頁面和新頁面重復包含的問題,如果兩個頁面都包含同一個頁面,比如頁眉頁腳,要用 require_once.
總而言之,跳轉可以做到,但是程序員要清楚都發生了什麼,否則很容易得到一些奇怪的結果.