首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP -不工作

PHP -不工作
EN

Stack Overflow用户
提问于 2015-11-16 10:54:50
回答 2查看 105关注 0票数 0

我有以下目录结构:

home/admin/super/

home中,我有一个名为config.php的文件

代码语言:javascript
运行
复制
<?php
//Get relative path - for PHP files
$documentRoot = $_SERVER['DOCUMENT_ROOT'].'/mwo2015/';
include($documentRoot.'library/constants.php');
echo $paypalID;
?>

echo $paypalID得到了回响;

在路径home/admin/中,有一个名为access-control.php的文件

代码语言:javascript
运行
复制
<?php
//Common files
include('../config.php');
?>

回声$paypalID又一次被回响。

在path home/admin/super/中,有一个名为output.php的文件

代码语言:javascript
运行
复制
<?php
include('../access-control.php');
?>

没有输出,我在路径的error_log中得到以下错误

代码语言:javascript
运行
复制
PHP Warning:  include() [<a href='function.include'>function.include</a>]: Failed opening '../config.php' for inclusion (include_path='.:/usr/lib64/php:/usr/share/pear')
EN

回答 2

Stack Overflow用户

发布于 2015-11-16 11:00:37

试试这个..。

“相对包含路径”不会移到包含的文件中。

解决方案是使用绝对路径,您可以使用dirname(__FILE__)与亲属和绝对路径组合,并获得包含该文件的目录。

在包含文件中,可以使用以下内容

代码语言:javascript
运行
复制
require_once dirname(__FILE__) . '/yourfile.php';
require_once dirname(__DIR__) . '/yourfile.php';

代码语言:javascript
运行
复制
include dirname(__FILE__) . "/yourfile.php";
include dirname(__DIR__) . "/yourfile.php";
票数 0
EN

Stack Overflow用户

发布于 2015-11-16 11:42:00

你遇到的问题是:

相对路径使用入口点。因此,如果您开始并访问home/admin/super/output.php,则从那里开始。

所以家/管理员/超级。

代码语言:javascript
运行
复制
include('../access-control.php'); 

回家/管理

这个文件中的包含会转到home/admin,但是它应该返回到家里,因此要修复这个问题,您可以这样做:

代码语言:javascript
运行
复制
../../config.php

这就是为什么要围绕一个入口点构建应用程序,或者创建一个全局根和webroot,以便在整个应用程序中使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33733634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档