我有一个保存相关帖子ID的表。
$criteria = new CDbCriteria;
$criteria -> select = 'content_2';
$criteria -> condition = 'content_1=:c';
$criteria -> limit = $count;
$criteria -> params = array(':c' => $id);
$posts_id = SiteContentRelated::model() -> findAll($criteria);
$ids = array();
foreach ($posts_id as $value) {
$ids[] = intval($value['content_2']);
}
$posts = SiteContent::model()->findAllByPk($ids);
echo '<pre style="direction:ltr;">';
print_r(count($posts));
echo "</pre>";
die();和结果:
1并且我确定表中的行数(3行)。我的错误在哪里?
发布于 2013-01-08 20:29:14
因为我们不知道你的数据集,你应该先试着调试一下:
比较:
count(SiteContent::model()->findAll())和
count(SiteContent::model()->findAllByPk($ids))如果结果不相同,则您的查询不是您希望它执行的操作。如果它们都不正确,则说明您没有正确的数据集。
第二点,您应该使用var_dump而不是print_r进行调试。Print_r将布尔值显示为1或0,而不是它们的实际值
https://stackoverflow.com/questions/14102577
复制相似问题