WordPress 源码学习 #01
接着 #00 来继续写 ,我们上一期看到wp-blog-header那个文件 ,里面包含了wp-load 和 template-loader.php 我们按照顺序先来看 首先我们先自己测试一下 include 和 require的区别 根据这段实例代码 <?php echo “<h1>”.”INCLUDE 1″.”</h1>”; require(‘./include1.txt’); echo INC; echo “<h1>”.”INCLUDE 2″.”</h1>”; include(‘./include2.php’); echo INC ?> 其中 ,INC是在include2.php内定义的常量, 有人说 inlcude和require的一个区别是 include会把文件包含在整个代码的最前面 ,而require不会 ,按照他的说法 ,这个代码运行的时候运行到底一个echo INC 就应该输出了 INC的值 可实际上 运行结果是未定义的常量 ,所以 ,这个说法是错误的 include 和require 都是在运行到这里的时候,才会把文件包括进去,而不是在一开始就包括进去 。 下面测试一下 ,如果require的文件不存在会怎样 把sample.php的第一个require的文件名改为 mengmengda.php(这个文件真的不存在哦~) 我们得到了这样的错误报告 Fatal error: require() [function.require]: Failed opening required ‘./mengmengda.php’ (include_path=’.;C:php5pear’) in F:WAMPwwwwplearnindex.php on line 4 果然是个FatalError 我们再试试把include的改为 mengmengda.php index.php文件正常显示,除了报了两个警告以外,没有其它的问题 ,看来这就是include和require的区别了 ~ 下面我们继续研究wp-blog-header.php里面require的那几个 ,首先深入研究wp-load.php 这段注释里面已经说明了,这个代码做了什么 来看一下注释: /** * Bootstrap file for setting the ABSPATH…