我有一个返回这个的函数:
function some(){
...
return $this->query->execute();
}
然后我有这个:
$var = some();
但是,当我尝试获取 $var 时,页面将无法加载。希望任何人都可以帮助我,我知道执行不是空的,因为我会在 some() 中获取()结果。
当我对 $var 执行 var_dump 时,它返回 bool(true)
PDOStatement::execute
返回bool
它是否成功,所以这是正确的功能,它让您知道查询已成功执行。
您需要返回的是结果集:
$this->query->execute();
return $this->query->fetchAll();
或者PDOStatement
对象本身:
return $this->query;
你说的“获取 $var”到底是什么意思?PDOStatement::execute()方法返回一个布尔值。true
如果成功或false
失败。从 PDOStatement::execute() 的返回值中没有可取的东西。您在 PDOStatement 对象上调用 fetch。
如果在此代码中 $this->query 是您的 PDOStatement 对象,那么您可以...
$this->query->execute();
return $this->query
从您的函数中,这将返回您可以调用 fetch 方法的 PDOStatement 对象。或者只是从你的函数内部获取它,如果你想要的话,直接返回结果。