PHP检查是否存在负索引不工作?
我有一些代码在遇到以下问题之前运行良好:PHP检查是否存在负索引不工作?,php,arrays,isset,array-key-exists,Php,Arrays,Isset,Array Key Exists,我有一些代码在遇到以下问题之前运行良好: if(array_key_exists($snIdx, $fields)); $surnameField = trim($fields[$snIdx]); 或者我试过的其他版本: if(isset($fields[$snIdx)); $surnameField = trim($fields[$snIdx]); $snIdx=-1。 它在第二行给出了未定义的偏移量错误($姓氏=trim…)。 我认为我不需要粘贴其余的代码,因为异常表明这
if(array_key_exists($snIdx, $fields));
$surnameField = trim($fields[$snIdx]);
或者我试过的其他版本:
if(isset($fields[$snIdx));
$surnameField = trim($fields[$snIdx]);
$snIdx=-1
。
它在第二行给出了未定义的偏移量错误($姓氏=trim…
)。
我认为我不需要粘贴其余的代码,因为异常表明这些函数有问题。我的PHP版本是5.4.16。如果行,请删除
末尾的分号。否则相当于:
if( something) {
// no-op
}
$surnameField = trim($fields[$snIdx]); // undefined offset error.
嗯,你有$fields[-1]
吗?没有。这就是抛出异常的原因。但这就是为什么会有一个条件。你的条件没有任何作用,因为你有代码>在它的结尾。谢谢你指出它。我想我得出去一会儿,让我的大脑恢复正常。是的,确实是这样,放松一下:)啊哈:D+1真丢脸。我很丢脸,我花了整整四分钟才回答这个问题:p