require() 和 include() 除了怎样处理失败之外在各方面都完全一样。include() 产生一个警告而 require() 则导致一个致命错误。换句话说,如果你想在丢失文件时停止处理页面,那就别犹豫了,用 require() 吧。include() 就不是这样,脚本会继续运行。同时也要确认设置了合适的include_path。

解决方案 »

  1.   

    为什么要确信设置了合理的path?
    另外,记得以前读过一个区别,是说在if语句里面的话require不管if是否成立都会执行,而include则不会吧?
      

  2.   

    就是说再解析程序时即读取require的文件,而不是解析后,如果不能读取到被require的文件,就不能进行下一步动作。
    所以,不被正确包含就会导致程序的文件,用require比较好。可能效率上也略微高点。
      

  3.   

    require() 无论如何都会包含文件,而 include() 可以有选择地包含:
    <?php
    if(FALSE){
      require('a.php');
    }
    if(FALSE){
      include('b.php');
    }
    ?>
    a.php 一定会被包含,而 b.php 一定不会被包含。