duanqiang2977 2014-07-09 10:17
浏览 41
已采纳

包含在php中的相对路径

I have a common include file to be used in whole website, which is located in home directory. Now to use relative paths in include I have two options:

Using document root to get to root and then using the path to include my file

<?php
include $_SERVER['DOCUMENT_ROOT']."/lib/sample.lib.php";
?>

OR

Using chdir to change working directory of the script to home directory, then including my file.

<?php 
$what_was = getcwd(); 
chdir("/path/to/roo/directory/"); 
include("/lib/sample.lib.php"); 
chdir($what_was); 
?>

I want to ask which of the above methods is good regarding performance and security point of view?

  • 写回答

1条回答 默认 最新

  • dongnuochen9449 2014-07-09 12:55
    关注

    I think none of them.

    Always use some combination of __FILE__ constant and dirname() function.

    For example:

    <?php
      $root_dir = dirname(dirname(__FILE__)); // assuming the root dir is 1 directories behind the executed file.
      include($root_dir . "/lib/sample.lib.php");
    ?>
    

    References:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 数学的三元一次方程求解
  • ¥20 iqoo11 如何下载安装工程模式
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题