有人可以指出为啥我的 require_once() 函数找不到路径吗? php
Posted
技术标签:
【中文标题】有人可以指出为啥我的 require_once() 函数找不到路径吗? php【英文标题】:Can someone please point out why my require_once() function can't find the path? php有人可以指出为什么我的 require_once() 函数找不到路径吗? php 【发布时间】:2019-03-13 19:00:45 【问题描述】:我似乎找不到答案,我已经问过我认识的每个人。
在我的本地服务器上,我的代码运行良好。当我将它上传到服务器时,require_once(); 函数停止工作。我的文件系统非常简单。在主网站文件夹中,我有:index.php、私有(文件夹)和公共(文件夹)。
当我运行网站时出现此错误
“警告:require_once(private/initialize.php):无法打开流:第 6 行 /home2/inbounf6/public_html/zampi/index.php 中没有这样的文件或目录”
这是第 6 行的内容:require_once('private/initialize.php');
我已经尝试了我能想到的每个版本的文件路径,但没有任何效果。
当我移动东西并将它放在同一个文件夹中时,它可以正常工作。所以我认为问题出在文件夹中,或者换句话说,它没有访问私人文件夹。
private文件夹和initialize.php的权限都是7 5 5。
有人知道发生了什么吗?
【问题讨论】:
权限呢?谁运行服务器,wsho 拥有私有文件夹,它有什么权限? 你试过这篇文章中的解决方案了吗? ***.com/questions/5116421/… require_once :failed to open stream: no such file or directory的可能重复 您应该使用 realpath(),并使用 dirname(FILE) 获取当前目录:require_once(realpath(dirname(FILE))。 '/../includes/dbconn.inc')); 尝试权限 777,因为某些系统不允许使用 755 访问网络 【参考方案1】:使用魔法常数__DIR__
:
require_once(__DIR__ . '/private/initialize.php'));
__DIR__
文件所在目录。如果在包含中使用,则返回包含文件的目录。这相当于 目录名(文件)。此目录名称没有尾部斜杠 除非是根目录。
【讨论】:
【参考方案2】:试试这个require_once('./private/initialize.php');
【讨论】:
您能否进一步解释为什么您认为这可以解决问题?以上是关于有人可以指出为啥我的 require_once() 函数找不到路径吗? php的主要内容,如果未能解决你的问题,请参考以下文章