官方系列教材 - G计划

Joomla开发手册

Joomla提供了完善的数据库抽象层,以简化第三方开发人员使用。Joomla支持各种不同的SQL数据库类型,开发人员只需要调用Joomla提供的数据库API接口,系统就会自动处理数据库的适配以及兼容问题,极大的方便了开发者进行跨平台应用的开发。

 自Joomla1.6之后,Joomla的数据库查询方式发生了较大的变化,推荐使用构建查询对象的方式来查询(当然目前系统仍然支持字符串的查询)。 数据库查询对象支持链式操作,可以方便的写查询语句。

链接数据库

我们使用JFactory::getDBO()方法就可以获得当前的数据库链接对象。系统会自动的使用configruation.php中的链接信息进行链接。代码如下:

$db = JFactory::getDBO();

获得查询对象


为了获得一个查询对象,首先需获得数据库的链接对象,然后调用链接对象的getQuery方法。代码如下:

$db = JFactory::getDbo();
$query = $db->getQuery(true);

JDatabaseDriver::getQuery方法接受一个可选的参数:$new .这是一个boolean值,默认为false,表示是否新获得一个查询对象。

在查询对象中,提供了很多的方法,比如书select() ,where(),join().from(),order()等等,基本上就是对SQL的关键词进行了封装,每一个关键词对应一个方法。查询对象支持链式操作,可以很方便的写出各种查询。一段典型的代码如下:

//常规查询语句
$query = 'SELECT * FROM #__zmax_users WHERE id=1'

//查询对象的方法
$query->select("*")->from("#__zmax_users")->where("id=1");

我们强烈推荐使用查询语句来写SQL,这样做大大的加强了代码的可移植性。 

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前

第3章 处理URL请求参数

第5章 日志

第6章 错误和调试

第10章 缓存

第14章 路由系统