我的结果只返回一个值,我需要值的集合


My result is returning only one value, I need collection of values

当我在Joomla 2.5中执行查询时,它只返回一个值&并非所有值:

$sql = "SELECT id FROM sd_content WHERE title LIKE '%$searchval%' OR introtext LIKE '%$searchval%'";        
$db->setQuery($sql);
$result = $db->loadObject();

很容易修复。您应该使用loadObjectList()而不是loadObject():

$sql = "SELECT id FROM sd_content WHERE title LIKE '%$searchval%' OR introtext LIKE '%$searchval%'";        
$db->setQuery($sql);
$result = $db->loadObjectList();

然后使用print_r查看所有结果:

echo '<pre>';
print_r($result);
echo '</pre>';

如Joomla文档中所述:

  • loadObject()从表中的单个记录返回一个PHP对象。
  • loadObjectList()从查询返回的表记录中返回PHP对象的索引数组。

当你想获得单列时,你可以尝试在Joomla 2.5中使用$db->loadResultArray();,在Joomla 3.0中使用$db->loadColumn();