我在CMS上使用第三方文件管理器插件,我想要从我正在使用的PHP框架中包含身份验证检查。验证部分工作正常,只是一个简单的包含然后验证,然而似乎在包含的类和文件管理器的类之间存在一些冲突。例如,我得到一个“类Kohana未找到”错误,其中属于文件管理器的类试图实例化属于该框架的类。
在我的文件管理器主条目文件的顶部,我有以下内容:
//load Kohana framework for Authorisation
include('../../../../../admin/index.php');
// If not a valid authenticated user, kill page
if ( ! Auth::instance()->logged_in())
{
die('Unauthorized');
}
完成身份验证后,我不再需要包含的文件和类,因为它们似乎与文件管理器冲突。有没有办法可以做到这一点,或者我误解了这里发生了什么?
抛出的错误发生在文件管理器类中 - public_html / media / js / tiny_mce / plugins / ajaxfilemanager / inc / class.file.php [67]
function file($path=null)
{
$this->__construct($path);
}
答案 0 :(得分:3)
Class xyz not found
不是冲突的标志 - 它可能不会被加载的Kohana引导程序。
没有办法在PHP脚本中“卸载”类。如果两个包共享一个类名,则必须在单独的脚本中加载它们,或者将其中一个包移到单独的namespace中(需要PHP 5.3+)。但如上所述,在您的情况下,您可能只需要加载正确的引导程序文件以包含所需的类。