2011-08-17 24 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()语句