как передать аргументы в функции php контроллера codeigniter - PullRequest
0 голосов
/ 21 мая 2011

Привет, друзья, у меня есть эта функция, чтобы показать все статьи, я пишу эту функцию снова и снова для разных категорий, потому что аргументы codeigniter связаны с URL, как мне передать аргументы, чтобы я мог повторно использовать эту функцию?

Это функция моего контроллера для отображения всех новостей.

function all_news(){

    //do some pagination
    $this->load->library('pagination');
    $config['base_url'] = 'http://localhost/news/all_news';
    $config['total_rows'] = $this->db->get('articles')->num_rows();
    $config['per_page'] = 10;
    $config['num_links'] = 7;
    //some css for pagination
    $config['full_tag_open'] = '<div id="pagination">';
    $config['full_tag_close'] = '</div>';
    //initialize pagination
    $this->pagination->initialize($config);
    //end pagination

    $data['title'] =" All News";

    //for pagination
    $data['query']= $this->db->order_by('id','desc');
    $data['query'] =   $this->db->get('articles',$config['per_page'],$this->uri->segment(3));

    $this->load->vars($data);
    $this->load->view('main/all_news');
}

Ответы [ 2 ]

1 голос
/ 21 мая 2011

Подумайте о переносе большей части логики вашего контроллера в метод модели.Затем вы сможете отправлять аргументы этому методу, который будет возвращать результаты базы данных вашему контроллеру на основе аргументов, которые вы отправляете методу.

0 голосов
/ 25 мая 2017

http://example.com/index.php/news/local/metro/crime_is_up

Номера сегментов будут такими:

1-новости
2-местный
3-метро
4-crime_is_up

 $product_id = $this->uri->segment(3);//metro

полная информация https://www.codeigniter.com/user_guide/libraries/uri.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...