index.php
这样导入得到$two object
require_once('./etc/one.php');
这样会是$two not ojbect
class test
{
function __construct()
{
require_once('./etc/one.php');
}
}
$test = new test();
这是为什么啊。one.php
include './etc/two.php';
$two = new two();include './etc/three.php';
$three = new three();two.php
class two 
{
function index(){}
}three.php
class three 
{
function __construct()
{
global $two;
if(is_object($two))
{
echo '$two object';
}
else
{
echo '$two not object';
}
}
}

解决方案 »

  1.   

    做过简单的试验!
    抛开页面引入不讲,你第一次使用require_once('./etc/one.php'); 
    类似于代码:class two{
    function index(){}
    }class three
    {
    function __construct()
    {
    global $two;
    if(is_object($two))
    {
    echo '$two object';
    }
    else
    {
    echo '$two not object';
    }
    }
    }$two = new two();//$two可以作为全局变量
    $three = new three();输出$two object你的第二种方法
    class test
    {
    function __construct()
    {
    require_once('./etc/one.php');
    }
    }
    $test = new test();
    类似于代码:
    class two{
    function index(){}
    }class three
    {
    function __construct()
    {
    global $two;
    if(is_object($two))
    {
    echo '$two object';
    }
    else
    {
    echo '$two not object';
    }
    }
    }class test{
    function __construct()
    {
    $two = new two();//不能作为全局变量
    $three = new three();
    }
    }
    $test = new test()输出$two not ojbect不知道明白否?
      

  2.   

    百度一下require,require_once,include.include_once的用法,你明白的~~
      

  3.   

    楼主, 期待您了解与熟悉auto_loader 这样您的技术会上一个层次。