2014-09-23 31 views
0

所以我有一個代碼:PHP,抓重定向

function testMe ($redir) 
{ 
    if ($redir) 
    { 
     header ('Location: /'); 
    } 
} 

我想如果它使用重定向來測試這個功能,但我不知道如何抓住它。它像捕獲異常

編輯:所以我想如果header() wasnt寫,但知道這是調用

+0

你的意思是你想不重定向有時? 'header'應該始終有效,你能否更清楚你的問題? – danronmoon 2014-09-23 21:00:44

+0

是的,我想「取消」重定向。 – 2014-09-23 21:01:26

回答

2
//calling the function which somewhere does this 
header('Location: /'); 

//testing 
foreach (headers_list() as $header) { 
    if (strpos($header, 'Location:') !== false) { 
     //header location set, function works, removing the set header 
     header_remove('Location'); 
    } 
} 
+0

我明白了。現在我只是不明白爲什麼在header()函數後執行任何代碼... – 2014-09-23 21:56:54

+3

爲什麼不呢?你還沒有阻止它。如果你在header()調用之後放置die(),那麼它將不會繼續。 – Weltschmerz 2014-09-23 21:59:25