2011-08-17 52 views
0

我得到這個甚至使用「isset」:PHP:注意未定義指數即使使用isset

Notice: Undefined index 

它給了錯誤的位置:

returnifisset($_COOKIE["miceusername"], ' value="', '"'); 

即使我檢查如果cookie是否設置。功能是:

function returnifisset($variable, $first = '', $last = ''){ 
    if(isset($variable) and !empty($variable)){ return $first.$variable.$last; } 
} 

我該如何修改這個函數來使它工作,而不是給出那個錯誤!

+7

你不使用isset,直到你進入函數。 PHP在函數處理變量之前查看cookie和索引。那是你的錯誤來自何處。 – Jrod

+0

@Jrod,我該怎麼辦? – Ameer

+1

你需要做'printifisset(isset($ COOKIE [「miceusername」],'value ='',''');)'這完全違背了使用函數的目的。我的建議是完全跳過這個功能,因爲它是沒有必要的,而且如果有的話,全部輸入所節省的費用是最小的。 – Jrod

回答

1

在isset被調用之前,您實際上是通過傳遞函數來訪問該變量。你無法解決這個問題。

0

您使用不同的函數名printifisset和returnifisset。 你也可以使用only!empty()語句