require_once :无法打开流:没有这样的文件或目录
Posted
技术标签:
【中文标题】require_once :无法打开流:没有这样的文件或目录【英文标题】:require_once :failed to open stream: no such file or directory 【发布时间】:2011-07-04 05:42:35 【问题描述】:我在“PAGE A”中有这个测试代码:
<?php
require_once('../mysite/php/classes/eventManager.php');
$x=new EventManager();
$y=$x->loadNumbers();
?>
"eventManager.php" 里面有一个 require_once:
<?php
require_once('../includes/dbconn.inc');
class EventManager ...
?>
我的文件夹结构是这样的:
mysite/php/classes folder and includes folder
如果我在我收到的浏览器中测试 PAGE A:
警告:require_once(../includes/dbconn.inc) [function.require-once]:无法打开流:没有这样的文件或 目录 C:\wamp\www\mysite\php\classes\eventManager.php 上线 3
致命错误:require_once() [function.require]: 无法打开所需的 '../includes/dbconn.inc' (include_path='.;C:\php5\pear') C:\wamp\www\mysite\php\classes\eventManager.php 在第 3 行
哪里出错了?
谢谢 卢卡
【问题讨论】:
“哪里出错了?”,大声笑?问题解决了吗? 是的 michiel..但我认为绝对路径会更好! Failed to open stream : No such file or directory的可能重复 【参考方案1】:这个错误很好地解释了问题所在:你试图包含一个不存在的文件。
尝试使用文件的完整路径,使用realpath()
,并使用dirname(__FILE__)
获取当前目录:
require_once(realpath(dirname(__FILE__) . '/../includes/dbconn.inc'));
【讨论】:
只是给 Windows 用户的一个提示:我必须将上面的解决方案更改为 require_once(realpath(dirname(FILE) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'util .php'));这也适用于 Linux。【参考方案2】:您需要链接到与包含 eventManager.php
(A 页)的文件相关的文件更改您的代码require_once('../includes/dbconn.inc');
致require_once('../mysite/php/includes/dbconn.inc');
【讨论】:
【参考方案3】:这个也可以
require_once(realpath($_SERVER["DOCUMENT_ROOT"]) .'/mysite/php/includes/dbconn.inc');
【讨论】:
【参考方案4】:它说文件C:\wamp\www\mysite\php\includes\dbconn.inc
不存在,所以错误是,你丢失了文件。
【讨论】:
它存在的原因是dreamweaver中已经链接到eventManager了!! 你真的看过这个文件吗?你能找到吗?如果您打开文本编辑器,选择“打开文件”,然后输入C:\wamp\www\mysite\php\includes\dbconn.inc
,它会说什么?文件未找到?宾果游戏。
@benubird :我有同样的问题,我检查文件仍然存在于路径中。这是什么问题?我很困惑【参考方案5】:
set_include_path(get_include_path() . $_SERVER["DOCUMENT_ROOT"] . "/mysite/php/includes/");
这也有帮助。见set_include_path()
【讨论】:
以上是关于require_once :无法打开流:没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章
require_once:无法打开流错误:没有这样的文件或目录
magento - 警告:require_once(app/Mage.php):无法打开流:没有这样的文件或目录
警告:require_once(Composer/PHPMailer/vendor/phpmailer/phpmailer/src/autoload.php):无法打开流:没有这样的文件或目录
警告:require_once(Zend / Application.php)[function.require-once]:无法打开流:没有这样的文件或目录