我包括"navigation.php",它在我所有的视图中都有通用菜单。
<div id="navigation">
<? include("navigation.php"); ?>
</div>
这段代码可以在所有其他文件中工作,但是在一个文件中它给出了错误。
Severity: Warning
Message: include(navigation.php): failed to open stream: No such file or directory
Filename: views/readsinvo_index.php
Line Number: 2
Severity: Warning
Message: include(): Failed opening 'navigation.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php')
Filename: views/readsinvo_index.php
Line Number: 2
在"readsinvo_index.php"中,它与其他文件
相同<div id="navigation">
<? include("navigation.php"); ?>
</div>
和两个文件都在"views"中。这两个文件都有777权限。
但是当我尝试
<? include(dirname(__FILE__)."/navigation.php"); ?>
它工作得很好,但在所有其他页面中,当使用
时,它是工作的。<? include("navigation.php"); ?>
是否有任何可能的原因,我不能把文件正常地只包含在这个文件中。我正在使用codeigniter框架和CentOS。
您可以使用APPPATH
APPPATH.'views/navigation.php'
和如何调用另一个php文件到Codeigniter视图的可能副本
CodeIgniter从单条目脚本文件index.php
运行。
所以,当你说当前目录时,它是index.php
的目录路径。
如果包含某个文件,它将首先搜索给定目录中存在的任何文件,然后在包含路径中搜索。
语句<? include(dirname(__FILE__)."/navigation.php"); ?>
dirname
给出index.php
的路径。
当你在views中添加statement: <? include("/navigation.php"); ?>
时,它会搜索views目录,因此,出现错误