2015-04-08 2 views
2

В моей модели у меня есть эта функция, которая определяет формат 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; 
} 

И контроллер имеет функцию, которая проверяет, является ли URL-адрес является правильным и перенаправляет, если я ошибаюсь :

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; 
} 

Но теперь я должен сделать то же самое с URL, который не содержит модели, то хотелось бы знать, если я могу создать эти две функции в контроллере (вместе или по отдельности), и как это может сделай это. Является ли это возможным?

Примечание: Я использую CodeIgniter

+0

Вам необходимо переместить эту функцию в библиотеку или помощник, который можно загрузить на страницы, которым не нужна модель. – Samutz

ответ

1

Вы можете переместить эту функцию в свой собственный функции хелперы файл, а также вы можете автоматически загрузить файл, например, создать вспомогательный файл в папке application/helpers в functions_helper.php и объявить/определить эту функцию в этом файле, то добавьте следующую строку в файл в application/config/autoload.php:

$autoload['helper'] = array('functions_helper'); 

Теперь вы можете использовать функцию так же, как и любой другой PHP функции. Например:

url_format_category($data['category'], $lang_domin); 

Это самый простой способ повторного использования общих вспомогательных функций (с использованием помощника).

+1

Спасибо за ответ! – GWER

+0

Вы больше всего любите @GWER :-) –

Смежные вопросы