Drupal整个启动过程共分为8个阶段:

  • DRUPAL_BOOTSTRAP_CONFIGURATION:initialize configuration
  • DRUPAL_BOOTSTRAP_PAGE_CACHE:try to serve a cached page
  • DRUPAL_BOOTSTRAP_DATABASE:initialize database layer
  • DRUPAL_BOOTSTRAP_VARIABLES:initialize the variable system
  • DRUPAL_BOOTSTRAP_SESSION:initialize session handling
  • DRUPAL_BOOTSTRAP_PAGE_HEADER:set up the page header
  • DRUPAL_BOOTSTRAP_LANGUAGE:find out language of the page
  • DRUPAL_BOOTSTRAP_FULL:Drupal is fully loaded; validate and fix input data

根据不同的目的,可以控制Drupal启动到不同的阶段。例如,index.php就需要Drupal完全启动:

<?php
define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); // 完全启动后再执行菜单请求处理
menu_execute_active_handler();

我有一个demo.php文件,用来测试Drupal数据库API,因此只需要数据库启动完成就可以了,后面的不需要执行:

<?php
define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE); // 到这里就可以使用数据库API了
$result = db_query('SELECT nid, title FROM node');

最新文章

  1. 用电脑给手机安装App
  2. 浅析selenium的PageFactory模式
  3. cx_Oracle 中文乱码问题解决
  4. VS插件开发,启用实验室环境
  5. python判断字符串,str函数isdigit、isdecimal、isnumeric的区别
  6. Daily Scrum – 1/11
  7. windows 下 文件属性及目录列表操作
  8. 查看sqlserver数据库的端口号
  9. decorate pattern 装饰模式
  10. 参数修饰符ref,out ,params的区别
  11. 六、vue如何缓存页面
  12. 用户 &#39;IIS APPPOOL\.NET v4.5 Classic&#39; 登录失败。
  13. 终于等到你: 图形化开源爬虫Hawk 3发布!
  14. python3 购物车 增改查终极版~
  15. 【Spring】Spring随笔索引
  16. 2018 ACM-ICPC青岛现场赛 B题 Kawa Exam 题解 ZOJ 4059
  17. nginx——配置 Nginx 错误页面优雅显示
  18. 新增和编辑clob字段
  19. Day 22 初识面向对象
  20. 关于VS2010 在设计窗口时控件消失问题

热门文章

  1. 批量更新带有命名空间的XML文件的多个节点值
  2. 洛谷P2782 友好城市
  3. python基础之函数对象,嵌套,名称空间和作用域
  4. html基础知识介绍
  5. [转]OpenSessionInView模式
  6. rdlc报表集锦
  7. 【spring】【spring mvc】【spring boot】获取spring cloud项目中所有spring mvc的请求资源
  8. VMware Workstation 重启服务脚本 解决连不上ssh问题
  9. 利用pycharm进行重构学习记录
  10. stylus使用文档总结:选择器+变量+插值+运算符+混合书写+方法