在我的root html目录中,我安装了SMF,还安装了CodeIgniter。我正在创建一个SMF SSI的自定义库,用于CI,但我遇到包括SSI.php文件的问题。这就是我的html根目录:
- html/root
/forums (html/forums)
-SSI.php
/application
/libraries
-SMF.php(html/application/libraries)
/system
所以在文件application / libraries / smf.php中,我如何包含SSI.php?这就是我正在使用的,但它说找不到文件
include('.../forums/SSI.php');
答案 0 :(得分:2)
当您的文件进入html/application/libraries
文件夹并且您要包含的文件位于html/forums
文件夹中时,您可以使用下面的代码来包含。
../../forums/SSI.php
答案 1 :(得分:1)
要获取基本目录,请使用以下其中一个:
$_SERVER['SERVER_NAME'];
或:
$_SERVER['DOCUMENT_ROOT'];
答案 2 :(得分:1)
我不知道它是否在库中可用,但FCPATH通常指向CI根目录,APPPATH通常指向您的应用程序目录。希望有所帮助,那些设置在CI根index.php文件中你可以尝试回显它们,看看他们是否到了库,如果不在其中添加一个setter像
/**
* Storage holder for the include files paths, is changed by $this->include_file()
*
* @access protected
*
* @var string
*/
protected $_path;
/**
* Sets the path for include files.
*
* @access private
*
* @param string $path Path of files to include.
*/
private function set_path($path)
{
$this->_path = $path;
}
// ------------------------------------------------------------------------
/**
* Includes file.
*
* @param string $file Filename to include
*
* @return void
*/
function include_file($file)
{
include($this->_path . $file);
}
然后使用
从CI范围设置它<?php
$this->library->set_path(FCPATH);
$this->library->include_file('SI.php');
如果我理解你正确寻找的东西,这样的东西可能有用。
答案 3 :(得分:0)
这是两个时期,而不是一个时期。一个表示当前目录,两个表示父目录,其他任何表示真实目录:
require_once('../{URL}');
答案 4 :(得分:0)
你最好使用绝对路径。
include __DIR__ . '/../../forums/SSI.php'; // php version >= 5.3
include dirname(__FILE__) . '/../../forums/SSI.php' // php version < 5.3
答案 5 :(得分:0)
USE
If ((Get-ChildItem "hklm:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\" | Get-ItemPropertyValue -Name Release | % { $_ -ge 394802 }) -like 'True')
FCPATH是CodeIgniter安装的根文件夹