Php 获取带有联合表的select,而循环需要数组,否则不会获取任何内容
下面我有一个方法,可以选择一些注释。我在获取数据时遇到问题,不是因为查询不起作用,而是因为如果我不使用数组,while循环无法获取数据,下面是我的代码 公共函数selectAllComment($idarticle) { $db=$this->getBdd() 在上面,我可以看到数据是使用var_dump on$result获取的。 然而,第一个问题是: 1-如果我对对象执行相同的操作,即$rescomment(我实例化一个类来水合数据,并在视图中使用它们…)。Php 获取带有联合表的select,而循环需要数组,否则不会获取任何内容,php,Php,下面我有一个方法,可以选择一些注释。我在获取数据时遇到问题,不是因为查询不起作用,而是因为如果我不使用数组,while循环无法获取数据,下面是我的代码 公共函数selectAllComment($idarticle) { $db=$this->getBdd() 在上面,我可以看到数据是使用var_dump on$result获取的。 然而,第一个问题是: 1-如果我对对象执行相同的操作,即$rescomment(我实例化一个类来水合数据,并在视图中使用它们…)。 2-如果我从$result中删除
2-如果我从$result中删除方括号[],我会得到“boolean false”…有什么想法吗?首先,参考并检查fetch_样式部分。其次,阅读准备好的语句和参数化查询。很抱歉,我没有回到这个问题,我正忙于其他事情。我检查了文档,仍然不明白为什么一个可以工作,而另一个不行…没有数组的while循环不工作。。。
$sql = $db->query('SELECT c.comment, c.date_comment
FROM comments as c
INNER JOIN joint_a_comments on joint_a_comments.id_comment = c.id
INNER JOIN articles a ON joint_a_comments.id_article = a.id
WHERE a.id ="'.$idarticle.'"
ORDER BY c.date_comment DESC
LIMIT 0,10');
while($result[] = $sql->fetch(PDO::FETCH_ASSOC))
{
$rescomment[] = new Comments($result);
}
return $rescomment;