在我的模型中,我有这个函数来定义url的格式:
public function url_format_category($category, $lang_domin) {
if (lang('abbr') == 'en_US')
$lang_domin = 'en/';
else if (lang('abbr') == 'es_US')
$lang_domin = 'es/';
if (is_array($category))
$category = (object) $category;
if($category->title != '') {
$return = strtolower(url_title($category->title)).'-cmdo-'.$category->id;
}else{
$return = 'cursos-de-marketing-digital-online-'.$category->id;
}
return $return;
}
并且Controller具有检查网址是否正确的功能,如果我错了则重定向:
if($this->uri->uri_string != $this->learn->url_format_category($data['category'], $lang_domin)) {
redirect($this->learn->url_format_category($data['category'], $lang_domin),'location','301');
exit;
}
但是现在我必须使用不包含Model的URL做同样的事情,然后想知道我是否可以在Controller中创建这两个函数(一起或单独)以及它如何做到这一点。有可能吗?
注意:我使用的是CodeIgniter
答案 0 :(得分:1)
您可以将此函数移动到您自己的函数帮助文件中,也可以自动加载该文件,例如,在application/helpers
文件夹中创建一个帮助文件functions_helper.php
并声明/定义此函数然后,在application/config/autoload.php
文件中添加以下行:
$autoload['helper'] = array('functions_helper');
现在您可以像使用任何其他PHP
函数一样使用该函数。例如:
url_format_category($data['category'], $lang_domin);
这是重用常见辅助函数的最简单方法(使用帮助程序)。