【问题标题】:Warning: require_once(../core/Config.inc): failed to open stream: No such file or directory警告:require_once(../core/Config.inc):打开流失败:没有这样的文件或目录
【发布时间】:2015-04-22 09:57:34
【问题描述】:

我有一个关于 php 中的 require_once 的问题。

首先这是我的文件夹结构:

  • monsite.dev

      • Database.inc

      • Users.inc

      • UsersProfile.inc

    • 核心

      • Config.inc
    • 网络

      • Index.php
    • tester.php

Database.inc 连接到我的数据库

web/Index.php 主页

tester.php 只是为了测试

我使用require_once 将文件链接在一起,除了tester.php 一直告诉我“无法打开流”之外,它的效果几乎非常好。

我在tester.php 中尝试了两种不同的方式:

1 - require_once '../classes/database.inc';(无法打开 Database.inc)

2 - require_once 'Users/Nicks/Sites/monsite/classes/database.inc';(无法打开 Config.inc)

但是当我从 index.php (require_once ../classes/database.inc) 使用它时,它可以完美运行。

为什么这在 tester.php 中不起作用,而在 index.php 中起作用?

非常感谢您的帮助。

网卡

【问题讨论】:

    标签: php


    【解决方案1】:
    require_once 'classes/Database.inc';
    

    您可以使用它,因为文件在同一目录中。

    【讨论】:

      【解决方案2】:

      那是因为那是不正确的路径。在tester.php 中应该是:

      require_once __DIR__ . "/classes/Database.inc";
      

      使用../ 可以返回一个级别。因此,在您的目录结构中,您是说classes/ 目录与monsite.dev 目录并排。不在里面。

      当在子目录中的index.php 中使用时,您必须返回一个级别 - 这就是它从那里工作的原因。

      【讨论】:

        【解决方案3】:

        tester.php & classes 目录在同一个文件夹中,所以不需要../。试试 -

        require_once 'classes/Database.inc';
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-10-23
          • 1970-01-01
          • 1970-01-01
          • 2016-07-24
          • 1970-01-01
          • 2018-03-01
          • 2017-04-08
          • 2012-08-11
          相关资源
          最近更新 更多