## 代码
```
/**
* 获取网站根目录
* @return string 网站根目录
*/
function cmf_get_root()
{
$request = Request::instance();
$root = $request->root();
$root = str_replace('/index.php', '', $root);
if (defined('APP_NAMESPACE') && APP_NAMESPACE == 'api') {
$root = preg_replace('/\/api$/', '', $root);
$root = rtrim($root, '/');
}
return $root;
}
/**
* 添加钩子,只执行一个
* @param string $hook 钩子名称
* @param mixed $params 传入参数
* @param mixed $extra 额外参数
* @return mixed
*/
function hook_one($hook, &$params = null, $extra = null)
{
return \think\Hook::listen($hook, $params, $extra, true);
}
```