1.php包含2.php再执行 就是对的。但是把2.php代码直接写入1.php,也就是3.php中的代码,就是错的。require究竟是怎么回事
函数中 require,被 require 的文件中的定义类代码都是全局的
即,3.php 的 2到 8 行要放到 function a() 之前
具体是报什么错呢,从代码上来看3.php应该是可以顺利执行的
require 并不是单纯的直接包含进来,底层是会做判断发,比如use关键字, require的时候不会把它放在function里面的
function a(){
class C{
public function b(){
echo 1;
}
}
$a = new C();
$a->b();
}
a();
use Think; 去掉就可以了。