2.php的代码是
$xx=123;3.php的代码是
require '2.php';
echo $xx;
可以输出变量$xx;但我把3.php的代码改成
require dirname(__FILE__).'/2.php'; 
echo $xx;
一样可以输出123,但变量$xx显示出警告undefined variable '$xx'
 这是什么原因了,是不是因为第二次引用文件时绝对路径的原因,如何去除警告。

解决方案 »

  1.   

    echo dirname(_FILE_).'/2.php'; //看看输出的路径是否正确。
      

  2.   

    会不会 是 php.ini 的相关错误级别 设置的原因啊!
    实在要屏蔽警告:echo @$xx;不过这样不大好的!
      

  3.   

    根据你的思路我测试了 
    require dirname(__FILE__).'/2.php';  
    我的是有问题的
    Warning: require(/usr/web/seaboat/XXX.php) [function.require]: failed to open stream: No such file or directory in /usr/web/seaboat/htdocs/XXX.php on line 19Fatal error: require() [function.require]: Failed opening required '/usr/web/seaboat/XXX.php' (include_path='.:/usr/share/pear:/usr/local/lib/Smarty/libs:/usr/web/seaboat/htdocs') in /usr/web/seaboat/htdocs/XX.php on line 19
      

  4.   

    我测试也没有输出warning,是正确的