在php中设置子目录脚本的基本路径

在php中设置子目录脚本的基本路径,php,Php,我可能知道这个问题导致了一个没有答案的话题,但谁知道呢!:D concider我们有一个应该在根路径中使用的php脚本 像这样: root/ 但当我们将其移动到子文件夹时,它是这样的: root/script/gallery 委员会在其守则中指出 images/add.png 应该是这样 scripts/gallery/images/add.png 确定一种方法是在节中设置基本路径 <base href="http://localhost/scripts/gallery/" /&g

我可能知道这个问题导致了一个没有答案的话题,但谁知道呢!:D

concider我们有一个应该在根路径中使用的php脚本

像这样:

root/
但当我们将其移动到子文件夹时,它是这样的:

root/script/gallery
委员会在其守则中指出

images/add.png
应该是这样

scripts/gallery/images/add.png
确定一种方法是在节中设置基本路径

<base href="http://localhost/scripts/gallery/" /> 
但设置此基本路径会使位于根目录中的其他脚本失败


简单的解决方法和费力的方法是更改脚本中的所有路径。

我想您正在寻找这个。路径来自您的htdocs根目录

if(dirname($_SERVER['PHP_SELF']) == '/script/dir/gallery')
{
  echo '<base href="http://localhost/scripts/gallery/" />';
}
但当我们将其移动到子文件夹时,它是这样的:

root/script/gallery
任何可能发生变化的事物都很适合抽象。我自己有一个非常简单的URL类,它通过使用$_ServerSuperGlobal确定当前请求的URL,它有一个简单的方法,可以从基本URL创建URL,包括相对路径

因此,与其

<img src="/images/foo.jpg" />
我用

当我重新定位PHP文件时,所有路径都会自动更新