2013-02-03 166 views
0

我有這樣一段代碼將文件名作爲參數傳遞給函數的問題?

redirect_loc(index.php); 

而且該功能的定義是在函數文件的某處。

function redirect_loc($location=NULL) 
{ 
    if($location!=NULL) 
    { 
     header("Location:$location"); 
     exit; 
    } 
} 

當我路過「的index.php」(注意周圍的引號指定爲字符串)它的工作原理,但路過的index.php給出錯誤請求的URL/indexphp此服務器上未找到。

爲什麼當它不作爲字符串傳遞時不工作?

+0

你是什麼意思「不作爲字符串傳遞」?你能舉出調用代碼的例子嗎,既可以工作又可以工作嗎? – leftclickben

+0

我確實提供了調用代碼,我不確定,但有somebdy編輯我的問題? – user481913

+0

確定編輯爲調用函數,由於某種原因它不在那裏... – user481913

回答

1

The。充當連接運算符。你有沒有看到它無法找到的文件的名稱?否. ......它將兩個「字符串」(indexphp)加在一起 ​​- 它認爲這就是你想要的。

+0

好吧,沒有意識到串聯運算符。功能甚至在功能參數... – user481913

+0

+1感謝您的所有幫助... – user481913

3

當你寫:

redirect_to(index.php); 

這正在index爲常數和php作爲另一個不變,並使用.連接符拼接它們。

它(對於一個名爲php和再次)尋找一個名爲index不變,並沒有發現該名稱的常量,使用值「指數」(或「PHP」)作爲一個字符串。

這不是建議的做法。如果你打開錯誤日誌記錄,你會看到它發出了一個通知,如「沒有常量定義index,假設字符串值」。

+0

+1感謝您的額外信息,我目前沒有error_logging的工作,但我會啓用,看看它說什麼.. 。 – user481913

相關問題