可捕获的致命错误:无法将类PDOStatement的对象转换为第111行main.loader.php中的字符串

可捕获的致命错误:无法将类PDOStatement的对象转换为第111行main.loader.php中的字符串,php,mysql,pdo,Php,Mysql,Pdo,我正在维护的代码是一个学校系统,当它到达开始注册的部分时出现问题,它返回一个对象错误,即在第111行,在我的代码中,这是在第111行中给出的错误 $qryMatricula = $conn->query($sqlMatricula); echo $qryMatricula; 我会是什么?我怎样才能解决这个问题 main.loader.php <?php $sqlMatricula = "SELECT M.Situacao FROM {$

我正在维护的代码是一个学校系统,当它到达开始注册的部分时出现问题,它返回一个对象错误,即在第111行,在我的代码中,这是在第111行中给出的错误

$qryMatricula = $conn->query($sqlMatricula);
echo $qryMatricula;
我会是什么?我怎样才能解决这个问题

main.loader.php

<?php      

                $sqlMatricula = "SELECT M.Situacao FROM {$pfx}Matricula M 
                                    INNER JOIN {$pfx}Curso C ON (C.CursoID = M.CursoID)
                    WHERE AlunoID = $alunoid AND C.PeriodoLetID = $periodoid";



                $qryMatricula = $conn->query($sqlMatricula);

                echo $qryMatricula;
                $situacaoMatricula = 0;
                if ($m = $qryMatricula->fetchObject()) 
                    $situacaoMatricula = $m->Situacao;          
我猜您使用的是返回对象实例的,无法通过
echo
转换为字符串

请尝试以下操作:

$sth = $conn->query($sqlMatricula);
$result = $sth->fetchAll();
var_dump($result);

因此,它返回一个空数组,并在其所在的底线上显示错误:如果($m=$qryMatricula->fetchObject()),则您收到的错误是您尝试回显一个无法转换为字符串的对象。如果删除回音,则错误将消失。当您在我的示例中的fetchAll之后得到emty结果时,您的db调用不会返回任何结果。您是否尝试直接在数据库上调用mysql来检查结果?顺便说一句,fetchAll只是一个例子,只需从代码中删除echo。您得到了什么错误?它应该做什么?