在自定义助手 Codeigniter 4 中加载视图
Load View in Custom Helper Codeigniter 4
在 CI 3 中,我可以像这样在助手中加载视图文件。
if ( !function_exists('render_admin_view') ) {
function render_admin_view($filename, $data) {
$ci = &get_instance();
$dir = $ci->config->item('admin_dir');
$ci->load->view($dir . 'common/header', $data);
$ci->load->view($filename, $data);
$ci->load->view($dir . 'common/menu', $data);
$ci->load->view($dir . 'common/footer', $data);
}
}
但在 CI 4 中,当我在我的自定义助手中使用此函数时,它显示以下错误。
Call to undefined function get_instance()
如何在 CI 4 的助手中加载视图文件?
不需要这些。
在 codeigniter 4 中,您需要做的就是:
if ( !function_exists('render_admin_view') ) {
function render_admin_view($filename, $data) {
$dir = config('admin_dir');
echo view($dir . 'common/header', $data);
echo view($filename, $data);
echo view($dir . 'common/menu', $data);
echo view($dir . 'common/footer', $data);
}
}
有关使用视图的更多信息:https://codeigniter.com/user_guide/outgoing/views.html?highlight=views
如果您想要 return 视图,只需将其存储在一个变量中,然后 return 这些变量的内容。
话虽如此,使用助手加载视图并不理想。你想在你的控制器中这样做。或者,如果您想渲染部分甚至有不同的布局,您应该查看 codeigniter 4 提供的视图布局。
在 CI 3 中,我可以像这样在助手中加载视图文件。
if ( !function_exists('render_admin_view') ) {
function render_admin_view($filename, $data) {
$ci = &get_instance();
$dir = $ci->config->item('admin_dir');
$ci->load->view($dir . 'common/header', $data);
$ci->load->view($filename, $data);
$ci->load->view($dir . 'common/menu', $data);
$ci->load->view($dir . 'common/footer', $data);
}
}
但在 CI 4 中,当我在我的自定义助手中使用此函数时,它显示以下错误。
Call to undefined function get_instance()
如何在 CI 4 的助手中加载视图文件?
不需要这些。
在 codeigniter 4 中,您需要做的就是:
if ( !function_exists('render_admin_view') ) {
function render_admin_view($filename, $data) {
$dir = config('admin_dir');
echo view($dir . 'common/header', $data);
echo view($filename, $data);
echo view($dir . 'common/menu', $data);
echo view($dir . 'common/footer', $data);
}
}
有关使用视图的更多信息:https://codeigniter.com/user_guide/outgoing/views.html?highlight=views
如果您想要 return 视图,只需将其存储在一个变量中,然后 return 这些变量的内容。
话虽如此,使用助手加载视图并不理想。你想在你的控制器中这样做。或者,如果您想渲染部分甚至有不同的布局,您应该查看 codeigniter 4 提供的视图布局。