PHP未定义索引,但var_dump则相反

PHP未定义索引,但var_dump则相反,php,arrays,indexing,Php,Arrays,Indexing,我有一个非常奇怪的问题,我有一个用户配置文件页,我正在建设。我有一个PDO函数,它使用请求用户的用户名获取结果集。然而,当我得到数组返回时,我试图使用其中的数据,我得到一个未定义的索引错误。但奇怪的是,当我var_转储数组时,我可以看到其中的所有值 $_GET['name'] = (isset($_GET['name']) ? $_GET['name'] : ''); $req = $_GET['name']; $info = array(); $info = getInfo($req); ec

我有一个非常奇怪的问题,我有一个用户配置文件页,我正在建设。我有一个PDO函数,它使用请求用户的用户名获取结果集。然而,当我得到数组返回时,我试图使用其中的数据,我得到一个未定义的索引错误。但奇怪的是,当我var_转储数组时,我可以看到其中的所有值

$_GET['name'] = (isset($_GET['name']) ? $_GET['name'] : '');
$req = $_GET['name'];
$info = array();
$info = getInfo($req);
echo($info['userid']);
var_dump($info);
get info函数从PDO获取结果集。例如,如果我尝试使用$info['userid'],我会得到错误,但是如果我使用var dump,我可以看到

["userid"]=> string(1) "1" [3]=> string(1) "1" 
更新 下面是GetInfo函数

function getInfo($req){
$db = new database(DB_USER,DB_PASS,DB_NAME);
$rs = $db->query('SELECT name, username, level, userid FROM users WHERE username = ?')
    ->bind(1, $req)
    ->resultset();
return $rs;
}

数据库有点长,如果有帮助的话,我可以发布它。

如果没有getInfo源,我最好的猜测是PDO查询返回一个对象而不是数组,因此请尝试使用echo$info->userid


您可以找到有关获取模式的更多信息。

您确定是echo调用传递了错误吗?getInfo函数的作用是什么?@Michael the getInfo;函数user PDO获取一个结果集,然后返回它。@user1126921 Ok,但请发布函数。我怀疑错误可能真的发生在那里。未定义的索引错误是否指向回音线或其他地方?此外,第1行有一个右括号,但没有匹配的左括号above@user1126921:为什么要在脚本中为$\u GET['name']赋值?你为什么要改变你得到的钱?你不应该这样做。我觉得这只是你问题的开始。