gpt4 book ai didi

PHP 包含来自另一个目录的文件,该目录也包含文件

转载 作者:可可西里 更新时间:2023-11-01 00:14:50 24 4
gpt4 key购买 nike

我在多个文件中包含了内容,我最近启动了一个新目录,但我的一些内容无法正常工作。

例如,我将此包含在位于 example.com/c/postpage.php 的 postpage.php 中:

include '../includes/overall/header.php';

它在进入根目录时工作并包含 header.php但我的问题是 header.php 还包含未包含的文件。

header.php 中的代码是:

include 'includes/head.php';

这是行不通的

如果我将 header.php 更改为:

include '../includes/head.php';

然后它破坏了我网站的其余部分,同时只为 postpage.php 工作

欢迎任何建议。

最佳答案

防止 CWD 中可能破坏相对路径的更改的最佳方法是使用绝对路径包含文件。

实现此目的的一种简单方法是使用 __DIR__ 常量。

例子:

文件结构:

serverRoot (/)
|-usr
|-local
|-www
|-index.php
|-bootstrap.php
|-includes
|-a.php
|-overall
|-b.php
|-c.php

假设:

  • index.php 包括bootstrap.phpa.php
  • a.php 包括 b.php
  • bootstrap.php 包括 c.php

索引.php

$basedir = realpath(__DIR__);
include($basedir . '/bootstrap.php');
include($basedir . '/includes/a.php');

a.php

global $basedir;
include($basedir . '/includes/overall/b.php');

bootstrap.php

global $basedir;
include($basedir . '/includes/overall/c.php');

关于PHP 包含来自另一个目录的文件,该目录也包含文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16451689/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com