Php 包括时,Codeigniter中的扩展挂钩未点火
我试图通过添加一些我自己的钩子来扩展内置钩子的功能。关于这个的文档非常稀少,所以我把它贴在这里,希望你们中的一个人也做过类似的事情 我在application/core文件夹下添加了一个MY_Hooks.php文件,如下所示Php 包括时,Codeigniter中的扩展挂钩未点火,php,codeigniter,Php,Codeigniter,我试图通过添加一些我自己的钩子来扩展内置钩子的功能。关于这个的文档非常稀少,所以我把它贴在这里,希望你们中的一个人也做过类似的事情 我在application/core文件夹下添加了一个MY_Hooks.php文件,如下所示 class MY_Hooks extends CI_Hooks { public function __construct() { parent::__construct(); echo "<pre>"; var_dump( $thi
class MY_Hooks extends CI_Hooks {
public function __construct()
{
parent::__construct();
echo "<pre>";
var_dump( $this->hooks );
echo "</pre>";
//this works fine when placed right here
$this->hooks["admin_start"] = function(){
echo "Boosting";
};
// this doesnt work when i simply include the file from the theme directory
if (file_exists(APPPATH.'themes/default/hooks.php'))
{
include(APPPATH.'themes/default/hooks.php');
}
}
}
然后在下一个代码片段中,我只是尝试从我设置的主题目录中包含相同的代码。这是行不通的。所以我挠头问为什么
因此,它与include文件中的代码相同。请告诉我我错过了什么。提前谢谢 什么不起作用?if或include语句?是的,当我将代码移动到include文件中时,它不起作用。但当它如图所示时,它运行良好。但它确实需要从主题目录中包含。IF工作正常。$this->hooks部分似乎失去了作用域。您有没有试过require_?使其正常工作的唯一方法是将其添加到
system/hooks
文件夹//获取主题“hooks”定义文件。如果(file_exists(APPPATH.themes/default/hooks.php')){include(APPPATH.themes/default/hooks.php')}
每次点击parent::u-construct
在这个新扩展的文件中,它似乎会杀死所有东西,我假设您已经设置了hooks配置?什么不起作用?if或include语句?是的,当我将代码移动到include文件中时,它不起作用。但当它如图所示时,它运行良好。但它确实需要从主题目录中包含。IF工作正常。$this->hooks部分似乎失去了作用域。您有没有试过require_?使其正常工作的唯一方法是将其添加到system/hooks
文件夹//获取主题“hooks”定义文件。如果(file_exists(APPPATH.themes/default/hooks.php')){include(APPPATH.themes/default/hooks.php')}
每次点击parent::u-construct
在这个新扩展的文件中,它似乎会杀死所有东西,我假设您已经设置了hooks配置?
$this->hooks["admin_start"] = function(){
echo "Boosting";
};
if (file_exists(APPPATH.'themes/default/hooks.php'))
{
include(APPPATH.'themes/default/hooks.php');
}