我的环境是apache + php
用include包含文件,却老提示没有该文件。
是不是apache要配置根目录费解的是:<img src='/images/xxx.jpg' /> 这样的就正常。

解决方案 »

  1.   


    就在子目录里边引用根目录下边的文件,以“/”开头不行,如:include("/config.php");
      

  2.   

    路径写全了 可参考ecshop取项目路径
    define('ROOT_PATH', str_replace('includes/init.php', '', str_replace('\\', '/', __FILE__)));
    include(ROOT_PATH."config.php");
    includes/init.php为你定义ROOT_PATH的文件名
      

  3.   

    路径写全了 可参考ecshop取项目路径
    define('ROOT_PATH', str_replace('includes/init.php', '', str_replace('\\', '/', __FILE__)));
    include(ROOT_PATH."config.php");
    includes/init.php为你定义ROOT_PATH的文件名
      

  4.   

    一级子目录下
    include("../config.php");
    二级子目录下
    include("../../config.php");一般建议只向下包含,而不似你这样向上包含你也可以这样计算出相对路径
    $path = substr(preg_replace('#[^/]+#', '..', $_SERVER['PHP_SELF']), 1, -2);inclde($path . 'config.php');
      

  5.   

    <img src='/images/xxx.jpg' /> "/"这样子是从根目录的下的images文件夹   
      

  6.   

    php的 / 并不代表是根目录。
      

  7.   

    这里织梦的包含方法
    require_once(dirname(__FILE__)."/../include/common.inc.php");
      

  8.   

    require_once(realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR.'include'.DIRECTORY_SEPARATOR.'common.inc.php'));DIRECTORY_SEPARATOR 指的是目录分割符,这样写的原因是windows和linux下不一样  
    windows "\"
    linux   "/"